Initial work on isolating Lakosian rules from the rest of the code
Lakosian rules will be preserved as an option, but this MR is a starting point in the direction of being able to parse non-lakosian code better without having to use the (slower and harder) semantic rules. The semantic rules still makes sense, though, for projects that doesn't follow "any" rules of code organization, so they will still make sense in some cases. The point is more that the usual C++ project must be easier to parse than it is today.
More specifically, if non-lakosian project is "enabled", this MR tackles:
- "Lakosian" projects are optionally disabled
- Projects that have nested folders should still be parseable using Codevis (But header and cpp files still need to be in the same dir)
- non-lakosian "pseudo-group" should not be created
- CMake include dirs will be taken in consideration while building the folder structure
Logical entities are unchaged, although the components where they live might.