Switch to py.test

I think py.test offers a number of advantages.

A big one for pymssql is that with nose we have this weird custom nose plugin and we only install it when the user does `python setup.py develop` so that forces things like tox and Travis to do that and that's annoying with tox, because then each of py26, py27, and py33 put build products in your development directory and overwrite `pymssql.so` and `mssql.so` So if you were using Python 2.6 to develop and then run `tox` then it will scribble over with Python 3 stuff and now with Python 2 you'll get errors.

With py.test, you don't need a plugin as you can have a `conftest.py` file which lets you do stuff globally. We can use this to get database config and to maybe open and rollback transactions so that the tests don't actually make changes to the database.

py.test also has a very nice fixture system that injects dependencies via arguments (i.e.: funcargs) -- I think that could make a lot of the tests more readable in the future if we leverage that.

Cc: @sontek, @aconrad