5/3/14: fixed some tests on ClassModel and VariableModel. made remove() an abstract method on BaseModel. put empty implementations on its subclasses.