[SPARK-4697][YARN]System properties should override environment variables

I found some arguments in yarn module take environment variables before system properties while the latter override the former in core module.
So this order was done on purpose. There were a few issues  if they are the other way.

See commit https://github.com/apache/spark/commit/3f779d872d8459b262b3db9e4d12b011910b6ce9 and associated jira https://issues.apache.org/jira/browse/SPARK-1631.

cc @vanzin

I know this was brought up once before but I don't know if anyone fully investigated to see if there is another solution