add tests and setup.py