Add an optional 'ZKMapListener' to ZooKeeperMap which fires as nodes are added, changed, and removed.
Add tests and changes based on feedback

from 9639406e2cb5d58245c8e839c2ee9295dde3915f