Cross-thread, cross-process synchronisation made tolerably easy