introduce LockManager class to alleviate potential deadlock issues with java synchronization
fix for enum marshalling; add deleteVersioned() and deleteHardVersioned() API