MODE-2336 Changed the way ModeShape deals with user transactions

Instead of using synchronizers which cannot be ordered with respects to ISPN's synchronizer that actually persists the data, ModeShape now uses an Infinispan transaction listener which will only be called once ISPN has processed the transaction.
This is the only way that ModeShape can be consistently notified only after ISPN has finished processing a transaction.
just liked the number I guess :smile: 
the only important aspect is that the timeout version of `await` is used, otherwise one can end up (like my case) with a test that never completes if one of the threads fails an assert.
Which amount do you think is safe in general ?