wip #19 Change to IQSource interface, large knock on effect.

Also wrote most of syncroniser. This needed the large change.