Commit dd9c6ec6

encode model IDs and tile coordinates when generating the data structures and decode that information  when clicking on them (WiP, mostly working and walls are missing)

As has been mentioned before, there was no actual distinction between what you were clicking on, but as the commit message states, now there is at least a distinction between models (objects) and tile coordinates.
This is happening in the sparkling new SelectionColourManager which does not represent my best moment when it comes to naming things.

Commit ec47d148

add fundamentals for the selection logic (WiP)

This adds a second draw pass that draws a second image resource on the renderer that is not visible to the user. It will but will only be used to identify objects, walls and tiles on the screen by drawing each individual entity with a unique, single colour.
Once a mouse click is registered, a copy of that image is made to CPU readable memory in order to check the unique (RGB) colour at the given pixel coordinates. However, so far nothing is actually done with this information.