source_group_tree macro to create MSVC filters

Source_group_tree is useful for msvc projects, it creates the filters in
the msvc project according to the file system hierarchy.