CB-6512: platform add <path> was using wrong www/cordova.js

cordova prepare nukes the www dir under platform on each prepare, so it was
using www/cordova.js from the cached platfrom files to restore it. For this to
work, prepare was starting with a lazy_load(platform) to make sure it has the
platform files cached.

For the case of platform add <path> this was downloading a stock version of
platform files instead of using the ones in <path>.

Some time ago see CB-5063 cordova started keeping a copy of cordova.js under
/platfroms/<platfrom>/platfrom_www/ but the cached files were still needed for
older projects that didn't yet have platform_www.

This commit removes the lazy_load before prepare and counts on platform_www to
exist. It also adds platform_www during `platform add`.
CB-7078: Disable serve.spec.js

Flaky, needs fixing, disabling for now.
Minor style fixes in fetch.js

Experimenting with jscs
CB-7140: Switch to using PluginInfo in plugman/fetch.js

In preparation to adding version logic for searchpath.
build configurations for Travis
build configuration for AppVeyor
CB-7124 Wrap the cordova platform string in Platform object

This prevents having to duplicate the check whether the platform string
specifies a version or not.

github: close #61
Merge branch 'travis' of https://github.com/sgrebnov/cordova-lib
Merge branch 'appveyor' of https://github.com/sgrebnov/cordova-lib
Fix plugman/install spec

The test was failing the first time it was running in a new machine, but not
the second. The problem was in a temp dir it failed to create. The following
would reproduce the problem on Linux:

    rm -rf /tmp/plugman-test; jasmine-node spec-plugman/install.spec.js

Add ed shell.mkdir('-p', temp_dir) to pre-create the dir.
fix(tests): cordova/lazy_load spec on Windows

Path on Windows is returned with forward slashes which is totaly fine; we should use path normalization before string comparison
Add Travis and npm badges to README.md
Add AppVeyor badge to README
CB-7187 Make CoreLocation a required library only for cordova-ios < 3.6.0
CB-7132 Fix regression regarding default resources

github: close #58
Add VERSION files to fix failing tests (forgot to git add in b7781cb)
CB-6756 Adds save and restore command for platforms.

It also enhances the ConfigParser to support engine elements and cordova namespace.

Conflicts:
	cordova-lib/spec-cordova/restore.spec.js
	cordova-lib/src/configparser/ConfigParser.js
	cordova-lib/src/cordova/restore.js
	cordova-lib/src/cordova/save.js

github: close #18
CB-6481 Added unified hooks support for cordova app and plugins

* Hooks can be defined in .cordova/hooks/hook_type, hooks/hook_type directories, config.xml and plugins/.../plugin.xml
* Javascript hooks retrieved from config.xml and plugins/.../plugin.xml will be run via new module loader
* Introduced before_plugin_install, after_plugin_install and before_plugin_uninstall hooks
CB-6481 Updated hooks documentation
CB-6481 Docs: deprecated .cordova/hooks + other minor updates