Move config.xml parsing into its own Config class

Now the parsing happens very early in the bootstrap process, before
loadUrl() is called. This enables a future change to put the start page
in config.xml instead of hardcoding it.
(cherry picked from commit d04fc289ac2efd0d36f71db2eb198bccee0c34cc)

Conflicts:
	framework/src/org/apache/cordova/CordovaWebView.java
	framework/src/org/apache/cordova/InAppBrowser.java
Add configurable start location to config.xml and template

Still possible to hardcode, there's a comment in the template showing
how that can be done.
(cherry picked from commit 958424ce590e6314cae10e511db096b999f20096)
[CB-4151] Extract whitelist from Config class for testability

Conflicts:
	framework/src/org/apache/cordova/Config.java
(cherry picked from commit 2a42bdeffb03673478c9e81e92ebc1348277c738)
[CB-4096] Implemente new unified whitelist for android
(cherry picked from commit 55a24d6dc901675da9350b2a67280ad3c3946bae)
Updated IBM-MODIFICATIONS, use correct Log namespace
Add note about manually updating Activity.java