OK! A bunch of stuff has happened.

* Implemented an underwater filter in the compose shader... Might move it to an indenendent shader completely later, but we'll see.

* Finally started doing changes to my terrain texture lookup table, so that it adjusts based on water levels. This means there won't be any grass textures on terrain below the water surface.

* Improved the way I reconstruct position in dirLight shader, should be slightly more performant now. Expect more tweaks in the future.

* Slowly reworking shader system to be easier to work with, moving all input parameters into input structs so that I have to change in less places every time I tweak smth.

* Tidied up a lot in gameRenderer header.