Start of the ReentrantLock implementation...conditions are still not supported.