[SPARK-4277] Support external shuffle service on Standalone Worker

Should we have some node-level environment variable alternative to this? In Yarn for instance we have shared Yarn config used by both the Spark application and the NM. This is probably fine for first-cut implementation though. Any thoughts @pwendell