fix most code docs and some work on the readme