add support for shader uniforms
implement matrix transformations