Using setuptools makes it easier to develop and debug
Makes copies of numpy arrays to work around bug in array handling
Now passes 5 of the 8 tests