Resolves #10: Throw ShaderCompilationError if a shader fails to compile