Needs fleshing out - this is primarily about task synchronization. If we had a remote sync solution would we need this?