One idea was to autogenerate the methods for
new and delete etc that are almost entirely boilerplate anyway or to use the views + rules (like CR
uses) for that. As it stands most of the packages don't implement much more than that anyway and having to write those by hand was the sort of thing we wanted to dispense with.
You would make creating an object type declaratory and
the requisite tables, plpgsql, and views would be created
from that (and lest anyone think this is to ambitious
I would point out the CR already implements exactly this
but only for CR derived object types).