#4 implementation + tests
remove obsolete dependency