[WIP][SPARK-1720][SPARK-1719] use LD_LIBRARY_PATH instead of -Djava.library.path

- [X] Standalone
- [X] YARN 
- [X] Mesos
- [X]  Mac OS X
- [X] Linux 
- [ ]  Windows
 
This is another implementation about #1031
It seems that `prefixEnv` will always be a list with 1 element. Let's just make it a string, then down there in L390 we can do
```
val commands = Seq(prefixEnv) ++ Seq(...)
```