Refactor the tests into their own directory.

Run these with a WD of either tests/ or / and it'll work, since
tests/__init__.py sets up the search path accordingly.

This is a cherry-pick for merging with feature/new-patcher in a PR.

Conflicts:
	tests/fa/test_check.py
	tests/git/test_repository.py
	tests/git/test_version.py
Remove failing tests
Life is beautiful. Everything's awesome.

See: FAForever/lobby/fun/fistycuffs-with-travis for info about what happened here.
Initial version description
Add classdoc
Add ref,hash,repo to Version
Add has_version
Be consistent with assertions
Naively convert featured_mod_versions hashes

This is pretty brittle, but I'm guessing it'll work for most patches.

It certainly beats actually keeping the current patcher around.
Use a triple for describing specific fmod versions
Add fa-coop
Make featured.py use git/version
Make it an error to check out unknown versions
Fake it 'til you make it
Refactor the tests into their own directory.

Run these with a WD of either tests/ or / and it'll work, since
tests/__init__.py sets up the search path accordingly.