This looks like a real problem in the current implementation, but it isn't inherent to the design and should be fixable.