Started rewriting library
Added new unit tests
Starting to create new integration tests