– add new configuration types for doors/windows
– add two (as of yet) dummy types for both doors and windows
– refactor the wall position/side enums into their own class and out of the WallType class
– change the wall position/side enums into enum classes and deal with the consequences thereof
This adds some boilerplate configuration information for doors and windows which is as of yet completely unused. To make it slightly more usable when the times comes some semi-dummy types were added for both doors and windows.
The more substantial change here is moving the position and side enums into a different, neutral, spot so that the upcoming door/window data can more easily use it. While doing so the “raw” enums were also converted into more modern enum classes, which meant some operators had to be implemented as well a fair amount of casting added in the right places.