require updates and comments

added more require statments so all the classes get loaded
added comments to understand the code better