Dynamic resizing, touch events

Automatically match to an aspect ratio (default is 16:9)
Touch events are now (mostly) differentiated from mouse events