Improvements to ShaderBuffer

Reading smaller vectors than what’s in the buffer isn’t a problem
anymore
Change fragment shader output to a Vector4f
Implement get and set window title, size and clear color
Fix integer normalization
Implement depth buffering and clamping