Refactored WebGL renderer by moving rendering to a separate object and using threejs-TrackballControls for camera control