Provide and expose a default Hadoop Configuration.

Any "hadoop.*" system properties will be passed along into configuration.
Check for AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY environment variables.

For custom properties, use "spark.hadoop.*" as a prefix instead of just "hadoop.*".
Fix invalid asInstanceOf cast.
Use hadoopConfiguration for default JobConf in PairRDDFunctions.
Pass a new Configuration that wraps the default hadoopConfiguration.
Also use hadoopConfiguration in newAPI methods.
Merge branch 'master' into hadoopconf

Conflicts:
	core/src/main/scala/spark/SparkContext.scala
	core/src/main/scala/spark/api/java/JavaSparkContext.scala
Merge pull request #362 from stephenh/hadoopconf

Add SparkContext.hadoopConfiguration
executor can use a different sparkHome from Worker
get sparkHome the correct way
oops, fix stupid compile error
send sparkHome as String instead of File over network
remove unused imports
more File -> String changes
Fix compile error caused by cherry-pick