Shaders and other

Added shader support, some bug fixes and code cleanup
Resolves #5. Resolves #2.