Map Join, initial cut

Conflicts:
	src/main/scala/shark/execution/optimizer/ColumnPruner.scala
	src/main/scala/shark/memstore2/MemoryMetadataManager.scala
	src/main/scala/shark/parse/SharkDDLSemanticAnalyzer.scala
	src/test/scala/shark/SharkServerSuite.scala
1)Clean up MapJoin to make it more efficient 2)Start cleaning up serialization code. Don't use XML Serialization and other adhoc methods if we can avoid it

Conflicts:
	src/main/scala/shark/execution/optimizer/ColumnPruner.scala
	src/main/scala/shark/memstore/TableStorage.scala
Revert "1)Clean up MapJoin to make it more efficient 2)Start cleaning up serialization code. Don't use XML Serialization and other adhoc methods if we can avoid it"

This reverts commit f9316add4a275fefcbf9d9eaa51419d60baf3ff8.
1)Clean up MapJoin to make it more efficient 2)Start cleaning up serialization code. Don't use XML Serialization and other adhoc methods if we can avoid it

Conflicts:
	src/main/scala/shark/execution/optimizer/ColumnPruner.scala
	src/main/scala/shark/memstore/TableStorage.scala
Updated test file paths.
Added 4 data files to data folder.
Updated server suite.
Clean up MapJoin code.
Let sql2rdd and sql functions throw exceptions when errors occur.
Improved testing using SharkContext.sql2rdd and SharkContext.sql.