I wonder whether it would be architecturally cleaner to just remove IAAS provider specific code from Spark and push it into projects like `spark-ec2` instead (this line to set SPARK_PUBLIC_DNS could be placed in the default `spark-env.sh` template used by spark-ec2, and we'd just make sure that start-slave.sh sourced spark-env.sh)

@pwendell @mateiz What's your opinion on this?