Added some comments and cleaned up some code.