Cleaned up some code and added in some commenting