Add mouse cursor support

Added mouse cursor support.

I've modelled this off of the X11 backend's cursor support, custom cursors are implemented, but untested as of now, we can drop them if need be. System cursors work fine.

Fixes Issue #3