Back to using delegates.  More queues involved for speed.  User feedback implemented.