Actually, I'm unsure if we really need this: for me, synchronization is only needed when we apply a proposal. Hhence the idea of using a revision: when we apply, then we know that all nodes are online (otherwise crowbar wouldn't allow the thing to be applied), and once the proposal has been applied, all nodes should have the revision set anyway so there will be no wait for sync.

(also, indentation is weird -- I'd expect the whole block to have two spaces more than the ```Chef::Search``` line)