ADDED LOTS OF DOCUMENTATION
cleaned up