Refactor to make way for pytest support

Adds a Makefile to manage building, vendoring in virtualenv support.
Refactors the module into a package. Working for unittest and nosetests,
and a stub for pytest.