DataModelInterface

added DataModelInterface interface
made AbstractDataModel handle parcelling automagically
table builder/upgrader checks columns before adding constraints
lots more tests