update and better docs