some documentation and improvements