Alright... recursive declarations are necessary but too damn complex...

... This is part learning by mistake and part refusal to compromise. What this commit comprises is that start of a new object model namespace selector. The original selector was fine before I started adding secondary selectors and trying to graft on support for recursively declared components. Here's what I learned: although economical the old primary selector format is inherently inflexible because the identity of the parent is always strictly coupled with the namespace identity. Recurive declarations taught that it's necessary to encode the identity of the parent extension point somehow in order to disambiguate among possibly many different points of recursive extension (within a single component even). This is where the vector of ID,key pairs came from for the secondary selector. But simply adding this disciminated key vector (the secondary) to the end of the simpler primary is super limiting; you can't define a self-extensible component that is extensible by instances of some other object for example (how would you address the subinstances?). There are a raft of other problems w/the primary/secondary select vector scheme so I'm going to abandon it entirely in favor of single selector system that is able to universally address to arbitrary depth/breadth.