new dependencies and cleanup
added testing environment
added some low level tests