Move all testing steps inside of the setup.py file

Making the tests slightly more portable and as a result there are
fewer things for users to worry about running.