sharedarray to use only workers on current host by default

If unspecified, the default behavior of the shared array constructor was to map the array across all workers. It has been changed to only use workers from the current host. This makes the sharedarray object more resilient to changes elsewhere, i.e. other parts of the program may start workers on other hosts, but the sharedarray parts of the code will continue to work.

This coupled with https://github.com/JuliaLang/julia/pull/5512 , i.e., `pmap` with a `pids` argument would allow folks to specify a `pids` keyword arg to pmap like `pids=procs(S)`, which would make the distributed code more resilient to changes in the number / distribution of workers.