* Adds a derived class from Nunit's Is test constraint class.
The game camera can now be rotated.
* Added the new `bind` command to the console, used to bind a key to a keybind.
Added two new keybinds for rotating the View camera left and right.
Added more info to the ""Component does not exist for state" exception.
Added Reduced() and FlipPositive() public functions to Angle.
* Fix a copy/paste bug.
* Adds missing code to bind/unbind CameraRotateLeft.
Camera snapping now actually uses the CameraSnapTolerance constant.
* Work on shadow casting.
* Shadowcasting depth works, code cleanup
* Adds #include support to SWSL parser.
* Move lighting shader to swsl.
Also more shader parser fixes.
* Move PI constant to correct file.
* Got functional FOV, working on wall bleed.
* Hey, it kinda works.
* Occluder component now lives in shared.
* Optimizations.
* Fix light map color format.
I set it to something else while testing perf.
* Front face cull final FOV pass.
* Fix holes in occlusion geometry due to disabled occluders.
* Starting work on better wall handling.
* Some comments.
* Improve font-face-culled FOV pass.
* Improve various light biasing things.
* VSM, smooth shadows.
Also unused VSM blurring because it didn't work but committing it like this will forever keep it in Git somewhere.
* FOV smoothing, looks kinda awful.
* Base wall bleed blur strength on camera size.
* The part where I give up.
* Comments. Many comments.
* Allow eyes to disable FOV.
* Improve OccluderComponent on the client.
* Update for occluder component changes.
* Maybe do this properly...