Initial commit
Local and remote semaphores
Flesh out shared locking API
Provide information about local/global ownership
Working Hazelcast solution
Fix default semaphore permits
Use sisu version of WeakHashMap, uses identity equality for correctness
Rename SharedLock -> ResourceLock
Add headers
javadoc
Fair-locking
Avoid Collections.synchronizedMap since it caches its keySet wrapper which doesn't play well with Weak.keys()
Apply code format
Switch to concurrent weak map
Update to latest hazelcast
Start with simple test
Multi-threaded lock test
Beef up multi-threaded test; remove unnecessary clause
Groundwork for JMX management
Add JMX controls to query and unblock shared resources