Implement basic mouse manipulation for GLWidget

* Mouse grabbing
* Mouse tracking
* Cursor shapes