to me (and I may be wrong) this smells like we need something like a ViewManager