It looks like I changed alot, I mostly just fixed the commenting on all
these classes...