Yeah, I'm having a bit of trouble wrapping my head around what exactly it is you're trying to accomplish-- it really sounds like your solution is significantly more complex than your problem... perhaps if you described the actual functionality you're trying to implement, we'd have a better chance of suggesting something.
-- awl
