I'm not sure I see having a global object table in the database buys us anything, either. Having such a global object table *in documentation* certainly would be useful for understanding and clarity. Although I may yet be persuaded to seeing its benefits, right now it makes more sense to me to have a small set of base objects, each persisted in the database by one or more tables devoted to that object. Continuing this theme in my idealized view of Drupal data architecture (and my view is always subject to change ;-), I see a small number (1 to 3?) of well-defined polymorphic APIs for handling these base objects, using highly optimized code and SQL. In theory, all access to them would be through such code, though in practicality that is impossible. The compromise is to handle 80% of the cases in such a manner. The other 20% are novel cases.