Bug 777468 - Remove unneeded dependency on PanZoomController. r=Cwiiis
Bug 777468 - Move mobile/android/base/ui/* to mobile/android/base/gfx/. r=Cwiiis

--HG--
rename : mobile/android/base/ui/Axis.java => mobile/android/base/gfx/Axis.java
rename : mobile/android/base/ui/PanZoomController.java => mobile/android/base/gfx/PanZoomController.java
rename : mobile/android/base/ui/PanZoomTarget.java => mobile/android/base/gfx/PanZoomTarget.java
rename : mobile/android/base/ui/SimpleScaleGestureDetector.java => mobile/android/base/gfx/SimpleScaleGestureDetector.java
rename : mobile/android/base/ui/SubdocumentScrollHelper.java => mobile/android/base/gfx/SubdocumentScrollHelper.java
Bug 777468 - Rename PanZoomController to JavaPanZoomController and extract a new PanZoomController interface. r=Cwiiis

--HG--
rename : mobile/android/base/gfx/PanZoomController.java => mobile/android/base/gfx/JavaPanZoomController.java
Bug 777468 - Move ownership of TouchEventHandler from LayerView to JavaPanZoomController. r=Cwiiis

This patch has a bunch of semi-independent changes that unfortunately
couldn't be split apart without introducing hacks to make stuff build
on the intermediate patches. The main changes are:
- Moving TouchEventHandler from LayerView to JavaPanZoomController
- Registering the touch interceptor on the LayerView rather than the
  TouchEventHandler
- Moving the Tab:HasTouchListener handler from GeckoApp to JPZC

The net effect of all of this is that the TouchEventHandler is hidden
behind the PanZoomController interface and not accessible to GeckoApp
or GeckoAppShell.

Additionally, some of the JPZC methods were renamed from onXXX to
handleXXX to maintain the convention that onXXX methods are "interface"
methods (i.e. exposed to arbitrary other code) whereas handleXXX
methods are private/package and should only be called in very specific
ways.