Significant optimizations have been made. The map used to be represented by a 2D vector<vector<int>> including tiles and non tile spaces, but now it is a 1D vector<STileData*>. This reduces size by an entire order of magnitude! (at the cost of memory though, but worth it)
Collision detection and resolution for Room-Window, Room-Tile, and Room-Room also implemented.