Attempt 1 at making comments dynamic.  This attempt uses a descriptor which provides a getter/setter interface so it is good when just adding a property to a model, but maybe not so good we it is more elaborate functionality.  Second attempt will switch this to a Manager