BUG-650: Split out CommitCoordinationTask

The coordination task takes most of the coordinator implementation. We
do not want to expose it, but at the same time we want to evolve task.
Split it out and eliminate the unneeded atomic state updates, as it is
only ever touched by a single thread.

Change-Id: I49b494d23a8b8f9cdf6cb3dc33e08d22c5bf325e
Signed-off-by: Robert Varga <rovarga@cisco.com>
Merge "BUG-650: Split out CommitCoordinationTask"