[Android] Refactor InputConfigFragment a little bit in preparation for the implementation of the new input overlay.

This moves all of the dialog handling into the actual MotionAlertDialog class itself. This is something I should have done a long time ago.
Also moved the Gamecube input binding preferences into their own PreferenceScreen.
[Android] Documentation typo cleanups from the last commit.

Also cleaned up the Javadoc for the constructor of MotionAlertDialog.
[Android] Implement a very basic version of the input overlay configuration screen.

Still a bit of a mess, but this will get cleaned up during finalizations.
[Android] Slight cleanup for previous commit. Mostly UI adjustments.

Makes the buttons appear uniformly on the overlay config activity.
[Android] The emulation overlay now sets the button positions based upon the locations chosen in the input overlay configuration settings. Documented the hell out of how the initialization of the Drawables works inside InputOverlay.java.

Also made the use of InputOverlayItem.java obsolete. So this is now removed.
[Android] Maintain the chosen button layout when returning to the input overlay configuration menu.

- Also make the overlay configuration screen fullscreen for the app.

- Also force the overlay activity to be landscape, since this is the only orientation the EmulationActivity supports.
[Android] Prevent automatic alignments within the overlay configuration settings. Let the user do this on their own.
[Android] Fix alignment issues with the overlay config settings.
[Android] Add the capability to dynamically enable and disable the input overlay during emulation.
[Android] Fix the super-mature string that was a placeholder for the title for the overlay configuration setting.

Also fix a NullPointerException possibility. Fixed it by giving the PreferenceScreen a title.
[Android] Improve an if statement check in InputConfigFragment.java. Also clarify it.
[Android] Add the copyright header to some Java source files that were lacking them.
[Android] Change how the onTouchEvent native method works. Just pass in the correct Button ID and Action and it'll be pressed or not. Not actually rigged up to the Java code yet. Doesn't support anything with an Axis yet so no C stick, main stick, L and R triggers
[Android] Overlay now works during emulation.
[Android] General cleanup.

We no longer need the buttons in Assets, considering they are now resources (ie. drawables).

Also remove (now) junk code from VideoSettingsFragment.java. We handle the input overlay within the InputSettingsFragment.

Also add a TODO detailing what needs to be refactored when axis support is finally added.
[Android] More cleanup. We don't need the preference to enable/disable the overlay in the video preferences anymore.
jit: change our linking module to be able to handle arbitrary exit addresses

And also do this for all JIT backends...
Merge branch 'master' into android-new-control-input-overlay

Conflicts:
	Source/Core/DolphinWX/Src/Android/ButtonManager.h
[Android-overlay] Had the action reversed.
[Android] Get rid of some unnecessary onAttach overrides in AboutFragment, VideoSettingsFragment, and FolderBrowser. These can just be replaced with calls to getActivity().