add documentation
reset returns self
version update