Use py.test for tests

Closes #59

I checked that this runs the same number of tests (116) as our custom test script. Now to see if it runs on Travis.