Conditionals' performance improved.

The conditional system now uses standard .NET concurrent collections
directly, which makes it much more performant. It also allows trigger
checking to be done out of transaction. This increases performance of
all writing transactions.

WARNING: On Mono 2.10, the ConcurrentDictionary has a bug, which was
already visible in the TreePoolTest in ConsoleTests (it prints those asterisks
only on Mono), and due to this bug the Queue test no longer works on Mono.
On MS .NET it runs just fine.

KNOWN ISSUE: Minor issue - the CommitSubscription._dict dictionary is not
cleaned up from empty entries. Will add this. It would really be cool if the
ConcurrentDictionary supported an atomic compare-and-remove... (MS .NET
supposedly does, but in a weird, non-documented way. Mono does not.)

ALSO, a minor change in LocalStorage - the _holderThreadId did not need
to be volatile. Fixed.