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

How about we do the enable check outside of this class and instantiate it only if it's enabled? Then we don't need to create all the RPC handler and stuff when we won't actually use them. Alternatively we could just move all of those things into this method.