Part of #118145. Like the draw brush, the overall API is still in progress, and in particular duplication will be reduced in the future. But this brush already reuses quite a bit of the utilities from the draw brush. A new utility is added for finding vertex neighbor indices as well. Overall I found this about 8% faster than the smooth brush in main already. Pull Request: https://projects.blender.org/blender/blender/pulls/122906