Ensure ZooKeeperMap is immutable.

The ZooKeeperMap implementation is expected to be immutable, however it
can be mutated by using Iterator.remove() on the returned entrySet(),
keySet(), and values() collections. This changes the delegate() to
return a Collections.immutableMap() instead of the current behavior
(overloading put/putAll/remove/clear).
Ensure that test runs to end.
Whitespace fixes.
Keep lines under 100 chars.
Ensure InterruptedException is handled properly

There were a few cases where InterruptedException is caught but the
interrupted status wasn't being set, and one other place where the
exception was being rethrown so setting the interrupt flag wasn't
necessary.
Merge pull request #144 from pkwarren/zkmap_immutable

Ensure ZooKeeperMap is immutable.
Merge pull request #145 from pkwarren/interrupt_fixes

Ensure InterruptedException is handled properly