update readme
update tests
update documentation