Issue #45: Added support for ZooKeeper-based dynamic configuration source 

Introduced a new interface called WatchedConfigurationSource that compliments PolledConfigurationSource.  Refactored accordingly.

Added new ZooKeeperConfigurationSource that extends WatchedConfigurationSource.  Uses Curator as ZK abstraction layer.

Added new DynamicWatchedConfiguration that extends ConcurrentMapConfiguration and uses an implementation of WatchedConfigurationSource - ZooKeeperConfigurationSource in this case.

Added generic ConfigurationUpdateResult of which PollResult now extends.

@Jordan Zimmerman:  Please review ZooKeeperConfigurationSource (and tests) if you have a chance.  I'd appreciate any feedback.

Thanks!

-Chris