added bits hashing
added a lot more tests, and fixed issues relating to them
included missing modules in the setup.py