Added initial mouse events

Added click event to mouse, and blank functions to convert mouse
position to world position.
Debounced mouse clicks

Added a flag and a button up event callback to make sure each click
is only handled once.
Added focus on click

When the mouse is clicked, the cursor is moved to the mouse
location. Thus, the world can now be navigated via mouse.
Added mouse scrolling

The viewport now scrolls when the mouse gets near the screen's edge.
Merge pull request #4 from mfabel/mouse

Added basic mouse navigation