According to reports and testing in blender/blender-addons#104434, DCCs tend to behave badly when rebuilding normals from 'bitflags' smoothgroups, if different smoothgroups using the same bitflag value share (are connected by) some common vertices, even if there are no common edges between them. This commit adds a new option to the RNA API generating smooth groups, to also consider smooth groups only sharing vertices as neighbors. It also makes related required change to implementation, and some refactor of the API, splitting public functions between 'normal' and 'bitflags' versions. This should make changes proposed in blender/blender-addons#105516 much simpler, and allow for a matching behavior in smoothgroups generated by the OBJ exporter as well. Pull Request: https://projects.blender.org/blender/blender/pulls/135248