updated documentation - should be just about complete now