finished all of the comments and refactored all of the code and fixed all of the errors