Added documentation to all the files