Add orthographic option for 3D cameras
Make the near and far clipping planes customizable
Make the vertical field of view customizable
Update projection matrices only when necessary
Remove two-dimensional cameras and drawables
Add a three-dimensional rectangle class
Expose window default camera
Fix sample-effects
Make windows resizable by default
Add an assert function that breaks in debugger

An alternative for the standard assert. This one breaks in debugger
instead of just aborting.

Doesn't do anything in release builds.
Draw cameras to their own framebuffer

This will enable post-processing effects and layering multiple cameras
on top of each other in the future.
Miscellaneous clean up
Merge branch 'feature/refactor-3d-and-2d' into develop

Removes the distinction between 2D and 3D. Everything is now
technically 3D to reduce code repetition and complexity.

Cameras are now rendered to their own framebuffer to allow
post-processing and layering different cameras on top of each other in
the future.