Renderer - Use forward declarations
Renderer - use glProgramUniform instead of glUniform
Renderer - add basic support for image uniforms
Renderer - add texture targets for buffer texture
Renderer - fix the allocation of texture units
Renderer - Ignore unused uniforms
Renderer - do not treat images like we treat uniforms
Tests - Destroy the GL Context before we exit