Split classes into their own files and commented some.