Add canvas and touch detection for control/camera.

The code is terrible and want simplifying, but it
works, which is enough for now.