Refactoring - moved shader related stuff to the BasicShader class, divided Direct3DDisplay into A3DView and A2DView.