[SPARK-1776] Have Spark's SBT build read dependencies from Maven.

Patch introduces the new way of working also retaining the existing ways of doing things.

For example build instruction for yarn in maven is
`mvn -Pyarn -PHadoop2.2 clean package -DskipTests`
in sbt it can become 
`MAVEN_PROFILES="yarn, hadoop-2.2" sbt/sbt clean assembly`
Also supports
`sbt/sbt -Pyarn -Phadoop-2.2 -Dhadoop.version=2.2.0 clean assembly`


Could you remove the uses of infix syntax here? We explicitly avoid these in the Spark style guide:

```
(allProjects ++ optionallyEnabledProjects ++ assemblyProjects).foreach{ enable(sharedSettings) }
```