docs and working on tests passage