Reduce contention points in Commit Queue
Reduce contention in CommitLog
Reduce getConfiguration timeout when a node joins
Return immediately if no transactions are ready to commit
Increase log level when an exception is thrown during the CommitCommand
Add JMX info about enqueue transactions
Consistency fix: new validation scheme

* The validation did not take in account the non-visible versions set.
This can lead a transaction to be committed while it should be aborted,
creating inconsistencies in the data
Skip send the 3rd phase command for GMU
Fix compilation error
Bugfix: cannot obtain executor queue information via JMX if not initialized
Parallelize the sending of the CommitCommand with the data flushing

PS: this modification is only valid for syncCommitPhase

* First, the CommitCommand will update the commit queue. Then it is sent
to the other involved nodes. A future is returned...

* In the meanwhile, the thread will wait in the commit queue until the
transaction reaches the head of the queue.

* Finally, it waits for the acks from everybody.
Fixed JOIN behavior

* Reduces the timeout to get the configuration to 5000 msec.

* Avoid register the default protocols twice.
Uncomment Percentile and Transaction Class statistics
Fix: empty response list does not mean timeout
Fix: don't use 1PC with GMU
Responses now contain information about remote execution. TO-related
statistics added
 * Piggybacking waiting time also for remote get in GMU