Add support to run tests with py.test and coverage. #256

To be able to use this configuration one need to run:
```
# tox -c tox_pytest.ini
```
This configuration file setup the pytest-cov plugin and it is an additional dependency. 

It is possible to tests with some versions of python, to do this the command is:
```
# tox -e py27,py34,pypy -c tox_pytest.ini
```

Will run py.test with the python2.7, python3.4 nd pypy interpreters, for example.
The reason we have a ```tox_pytest.ini``` is just that I wanted to be able to use ```py.test``` but didn't have time to do a proper job of converting the tests (```py.test``` quite happily works with unittest tests as we currently have). So the non-standard ```ini``` file is only needed until we make ```py.test``` the default. See #256