Updated models

Comment<T> is needed so that Comment can return its parent of the correct type.
Circular references are actually ok, I was wrong before.
Apparently people don't like the mCamelCase for object attributes, so changed stuff to at least make it consistent.

Feedback?