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.
Using set implies that these functions do not need to be invoked in a specific order. Is that acceptable?