make tests clearer
simpler documentation
update deps and info
rewrite