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

from 9639406e2cb5d58245c8e839c2ee9295dde3915f
Add null check for listener and other small cleanup