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

This is another implementation about #1256
cc @andrewor14 @vanzin
This code is flawed.  eg: `$SPARK_CONF_DIR/spark-defaults.conf`a directory

How about this?

```scala
 val s = File.separator
    def getAbsolutePath(filePath: String): String = {
      Option(filePath)
        .map(t => new File(t))
        .filter(_.isFile)
        .map(_.getAbsolutePath).orNull
    }

    val configFile = sys.env.get("SPARK_CONF_DIR")
      .map(t => s"$t${s}spark-defaults.conf")
      .map(getAbsolutePath)

    configFile.getOrElse(sys.env.get("SPARK_HOME")
      .map(t => s"${t}${s}conf${s}spark-defaults.conf")
      .map(getAbsolutePath)
      .orNull)
```