SPARK-1099: Introduce local[*] mode to infer number of cores

This is the default mode for running spark-shell and pyspark, intended
to allow users running spark for the first time to see the performance
benefits of using multiple cores, while not breaking backwards
compatibility for users who use "local" mode and expect exactly 1 core.