Android register player

This is a rework of https://github.com/xbmc/xbmc/pull/2381 after the jni rewrite. It allows users to set XBMC as the default handler for the types in https://github.com/theuni/xbmc/commit/cf733f1b4072160c18529f2f9bb793d40120224e . Thanks to @koying for the original work.

I had to fix up a make a few changes to the lib as well as adding a few classes and stubs, the actual xbmc changes are in https://github.com/theuni/xbmc/commit/4867f032dbf4778a14fda64fde13bdef00bb9b05 and https://github.com/theuni/xbmc/commit/e3041c93a7d52ba782ff86570a5534a4c3acf284 . Verified working for file:// content:// and http:// urls.

Caveat: This does not allow users to send files to a currently-running XBMC instance, only launch one (maximim of one at a time though). We'll need to rearrange the activities a bit before that can work. At that time, we can also make the choices dynamic, so that if XBMC is running, users can be presented with "play with XBMC" or "queue in XBMC" depending on what's happening.