Splits coverage testing from other tests

Also uses unittest2 instead of testtools. unittest2 only works for
python 2 and causes the dependencies to be different between py2 and py3.
Adds coverage tox env to travis config
Merge pull request #450 from sudorandom/testing-updates

Splits coverage testing from other tests