Updated a ton of comments and added TODOs.  Also rearranged some of the 
methods in the .cpp files to be more logically ordered.