Added Shutdown system event, added a bunch of destructors
Architectural changes

- GameScene now contains a bunch of cameras one of them can be active at
a time
- SetProjection replaced by SetFrustum in IGraphicsContext to account
for different projection matrices between APIs ([-1,1] [0,1] depth
ranges)
- Some warnings fixed, some added