refactored the documentation a bit