This is an adaptation of Doug Lea's ReaderWriter lock to allow effectively two groups of readers.
Any number of readers in one of the groups can be share one lock, but only one group of readers
can be active at once. The difference is that the writer lock (which was a single entry) now behaves like a read lock
but without the single access restriction.
author: xenephon (xenephon@jofti.com)
Inner Class :protected class WriterLock extends Signaller implements Sync
Inner Class :protected class ReaderLock extends Signaller implements Sync