Added shader class, input handling and a placeholder shader.