Added a BlockObjectWriter interface in block manager so ShuffleMapTask
doesn't need to build up an array buffer for each shuffle bucket.
Allow changing the serializer on a per shuffle basis.
Allow the specification of a shuffle serializer in the read path (for
local block reads).
Merge branch 'blockmanager' of github.com:rxin/spark into blockmanager

Conflicts:
	core/src/main/scala/spark/storage/DiskStore.scala
Merge branch 'master' of github.com:mesos/spark into blockmanager
Added a shuffle block manager so it is easier in the future to
consolidate shuffle output files.
Allow specifying the shuffle write file buffer size. The default buffer
size is 8KB in FastBufferedOutputStream, which is too small and would
cause a lot of disk seeks.
Merge branch 'master' of github.com:mesos/spark into blockmanager

Conflicts:
	core/src/main/scala/spark/BlockStoreShuffleFetcher.scala
Two minor fixes according to Ryan LeCompte's review.
Updated according to Matei's code review comment.
Merge branch 'master' of github.com:mesos/spark into blockmanager
Merge pull request #587 from rxin/blockmanager

A set of shuffle map output related changes