Bug 1036064 - Accept local paths to --installer-url and --test-url; r=aki

If the argument given to --installer-url and --test-url looks like a
path (we only support UNIX paths), we prepend file:// to the value. The
existing URL handling code transparently "downloads" these URLs by
copying the file.

As part of testing this, I realized my local build wasn't producing a
jsshell archive and failed "downloads" would retry. I added some logic
to the download error handling logic to detect local filesystem errors
so this error is treated as fatal.

The .errno comparison should probably catch a few more failures, such as
permissions failures. But I'm not sure which ones are exclusive to
file:// vs other protocols. I suppose we could have certain protocol
handlers not retry. But this was the simplest patch.

--HG--
extra : rebase_source : e9884a8e1c7f51c2a9fe5865ebf62027d725f152
extra : amend_source : 6c71c664148f5221faa2cddfe890c6bdbf983498
Bug 1036193 - Always verify virtualenv path exists; r=aki

--HG--
extra : rebase_source : 4b63bb6db6b7645a90cd9020a4814fe622e10c7a
extra : amend_source : a54a09cb145632d4cd5315a38e6eb600b3c06f12
Bug 978507 - follup up patch: undo's commenting out hg shared dir on lin64, r=aki
Bug 898554 - Clobber first, then check out tools, r=aki
Bug 1036819 - build/* repos currently not able to push tags to github,r=simone
Bug 1036064 - Fixup to import errno; r=me

--HG--
extra : rebase_source : 6d313ade9001b1d60c709b125e18fd0e21023fa3
Bug 1019962 - Add developer configs for b2g emulator and marionette jobs. r=aki
bug 1025322 - fix clobbering choices r=jlund
Bug 1019962 - Add Android Arm developer config. r=aki
Bug 1019962 - Allow to download files outside of releng network with http authentication. r=aki
Merge branch 'master' of https://github.com/mozilla/build-mozharness
Merge branch 'master' into build-cfg-integration
adds comments for buildprop copy, mach return code, and other comments prepped for prod
resets hgtool.py env and purge.py clobber and purge commands back to master