CB-5782 Use CordovaError wherever relevant.

Other than the trivial changes that look like
new Error(...) -> new CordovaError(...)
there is also a change in util.js to throw the error instead of returning it
and associated changes in specs.
CB-5493 lazy_load now downloads to a temp dir and then moves.

If "cordova create" is interrupted with Ctrl-C while downloading the cordova
library for www, a bad version is stored in ~/.cordova/lib/. That bad version
is then used for future runs of "cordova create" which results in projects with
www dir containing no files except a subfolder named like
cordova-app-hello-world-3.2.0-ee9a86g3
CB-3612 Don't pass --device to "run" command by default. Update help text
Fix serve command when config.xml is in the root (not within www/)
Fix tests (sorry)