window: fix event loop not handling all events

Conflicts:
	source/polygonist/window.cpp
osx: fix runtime library search paths
entity system: add 'component' class
entity system: add 'entity' class
entity system: add tests for 'entity' class
entity system: add entity comparison operators
entity system: add 'spatial' component
entity system: add 'drawable' component

Doesn't work yet as it depends on the 'camera' component.
entity system: store list of cameras in drawables

Instead of the other way around.
graphics: add indices for boxes
vectors: add 'get_largest_axis' method
entity system: add 'matrix' property to 'spatial'
entity system: add const version of 'add_component'
entity system: add 'entity' overloads for camera methods in 'drawable'
graphics: add rectangle constructors taking a size
graphics: add box constructors taking a size
entity system: add assemblages
window: add const version of get_graphics_context
graphics context: fix const correctness
entity system: fix drawable remove_from_all_cameras

It froze since it modified the set while iterating through it.