Added comments for pretty much everything