Improved test setup & config

Can we do this pretty please? :)

Why this is better:

1. You can run tests from the root of the project which means you don't have to `cd` in and out of the `tests` directory when you want to run the tests vs when you want to `git add .` which you have to do from the root to add all the changed files.
2. You can overwrite the default config with your own `phpunit.xml` file.
3. It will make it easier to configure Travis CI.