Add key bindings for panning, zoom, and navigation

Also prevents zoomwheel from doing anything if the pointer is not
inside the image canvas.
Convert annotation list from Vector to Dict

This permits fast deletion