Refactor AndroidGameWindow to inherit GameWindow

This is the Android half of #1851

Biggest changes to Android:
- OrientationListener is now created by the GameWindow rather than the Activity, this seems like a better place to put it.
- AndroidGameWindows now contains a MonoGameAndroidGameView (Which implements AndroidGameView) rather than implementing it itself. The bits I feel should be in the AndroidGameView have been moved over (Touch, Key, Motion handling, Create/Destroy FrameBuffer, ISurfaceHolderCallback)
- The code that goes in your activity has changed as the GameWindow is no longer an android View (see 9766c809f6b918fef724e2b0bd1f510c3015d692, e71d6a0cf0c2fb97234e3bebf25a2d2660a188d8).
- #if ANDROID hacks have been reduced in Game, GamePlatform, TouchPanel, TouchPanelState