added code to properly update internal state if IP changes on cluster deploys
added methods to get public IP/FQDN when running in AWS, Euca, or GCE
added more logging when examining node list
storing celery state in /opt/celery, to preserve tasks across runs
killing rabbitmq before trying to restart it
not erasing rabbitmq data when starting as slave
always returning Time.now when updating zk list
Merge remote-tracking branch 'org/master' into preserve-celery-state-across-reboots
defining data earlier, so that it stays in scope
added guard in case data received is nil
correctly restoring rabbitmq data stored on ebs volumes
added comment explaining why we use rabbitmq on EBS
do not try to reestablish a connection on NodeExistsError
allow NodeExistsErrors to be raised and not caught
Merge pull request #823 from nlake44/zk-fixes

do not try to reestablish a connection on NodeExistsError
Merge pull request #810 from shatterednirvana/dont-update-nodes-on-startup

Always returning current time when updating ZK node list
Merge pull request #794 from shatterednirvana/revive-appcontroller-if-ip-changes

AppController no longer crashes if local IP has changed since last execution
Merge pull request #811 from shatterednirvana/appcontroller-lives-if-apichecker-down

Validating that APIChecker data is a Hash before using it
Merge remote-tracking branch 'org/master' into preserve-celery-state-across-reboots
Merge pull request #818 from shatterednirvana/preserve-celery-state-across-reboots

Persist Task Queue tasks to EBS/PD