Add pre_package event to wp8 project

WP7 project was already done in commit: bd2c667e947b3fda05541e0d1a124d23df60a132
Wait for the pre_package event to finish, or the update_csproj function might give unexpected results.
Fixes both the wp7 and wp8 parser.
Code style (indentation)
begin firefoxos tests
CB-4774: Copy www assets before running plugin prepare
CB-2234 Add 'cordova info' command
CB-5066: merged in windows 8 support into master from cordova-3.1.x
CB-5066: continuing merge of windows 8 stuff
config.xml helper function is used, removed error merge of wp folder.
fixed merge conflict
Merge branch 'master' of github.com:jlongster/cordova-cli
Update tests for commit d1c8024: update_project() should not call update_www() directly
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/cordova-cli
Merge branch 'master' of github.com:purplecabbage/cordova-cli
CB-5066: fixed issue with visual elements not being referenced correctly
Using .find to grab visualelements instead
CB-5106:[win8] fixed tests for windows 8
CB-5106:[wp7] fixed broken wp7 tests
CB-5106: removed flood of cp error messages when running tests
CB-4748: Fail quickly if dir passed to cordova create is not empty.

Some upstream tools (e.g. mca) need to pass extra configuration to
cordova create. In order to avoid pre-creating .cordova/config.json file
for this, an extra parameter is added to cordova.create(), it should be
an object with the same structure as config.json.

If id or name are given in the extra config, they will be used only if
the value given as the function parameter is falsy:
id = id || cfg.id || DEFAULT_ID