- Create VIRTUALENV_PACKAGE_LOCATION env var so we can customize virtualenv package download
- Refactor to have a common.sh containing the set_archflags and logging functionalities.
- Make the virtual env script a bit more robust against curl/tar/activate errors

Testing Done:
manually tested:
1) not specifying VIRTUALENV_PACKAGE_LOCATION,
2) specifying a valid custom VIRTUALENV_PACKAGE_LOCATION location, and
3) specifying an invalid VIRTUALENV_PACKAGE_LOCATION location.

Travis: https://travis-ci.org/jinfeng/jinfeng-pants-fork/builds/40690744

Reviewed at https://rbcommons.com/s/twitter/r/1316/
Sync of https://github.com/pantsbuild/pants/commit/af9ed0cf8f17e513759a357f98ee734ba76f535f