[SPARK-2098] All Spark processes should support spark-defaults.conf, config file

This is another implementation about #1256
cc @andrewor14 @vanzin
Wait, what do you mean? I'm suggesting that you do the map and filter after you get the file, not the directory. You can use `orElse` instead of `getOrElse` for that.

e.g.
```
sys.env.get("SPARK_CONF_DIR").map { t => s"$t${s}spark-defaults.conf" }
  .orElse(sys.env.get("SPARK_HOME").map { t => s"${t}${s}conf${s}spark-defaults.conf" }
  .filter(_.isFile)
  .map(_.getAbsolutePath)
  .orNull
```