Add '--depth' to 'git submodule update'

Fixes https://github.com/travis-ci/travis-ci/issues/1867
Merge branch 'master' into ha-feature-gh-submodule-depth

Conflicts:
	spec/shared/git.rb
Make --depth flag optional for 'git submodule update'

The opts path `git.submodules_depth` is up for debate
Define depth_opt in all situations
uncomment out some git specs

but only run them on Travis by default, as a clean room env is recommended
Merge branch 'master' into ha-feature-gh-submodule-depth

Conflicts:
	spec/shared/git.rb
	spec/spec_helper.rb
only run the ssh source_key stuff if in a clean room
test the clean_room tagged specs too
AND all the other specs too
fighting with rspec a little

http://stackoverflow.com/questions/12861627/command-line-to-run-all-examples-in-rspec-including-ones-that-are-filtered-out
add ssh-add in the bash stubs for specs
the composer fix is no longer needed
Disable npm spinner
Merge pull request #277 from bendrucker/npm-spinner

Disable npm's spinner
Set python_version correctly for PyPy3

Fixes https://github.com/travis-ci/travis-ci/issues/2611
the composer fix is no longer needed
don't announce the composer version if using php 5.2
Add spec to test PyPy3 support
Add specs for the Sinatra app
Add a /uptime endpoint