Added GestureListener for Single Tap and Long Press
Zoom of image is restored after rotation. Fixed bug in onMeasure when using view with wrap_content.

-After rotating, onMeasure now also resizes the image to its previous
size and translation.
-onMeasure now correctly get view size and mode to correctly handle
match_parent, wrap_content, etc.
-Refactoring.
-Comments.
Refactored onTouchListener into its own class. Refactored int mode into enum State.