add compression codec trait and snappy compression
fix dependencies
Merge branch 'lazy_file_open' of github.com:lyogavin/spark into compression

Conflicts:
	project/SparkBuild.scala
CompressionCodec cleanup. Moved it to spark.io package.
Documentation update for compression codec.
Added unit test for compression codecs.
Exclude older version of Snappy in streaming and examples.
Added Snappy dependency to Maven build files.
Updated the configuration option for Snappy block size to be consistent with the documentation.
Renamed compressionOutputStream and compressionInputStream to compressedOutputStream and compressedInputStream.
Refactored Vector.apply(length, initializer) replacing excessive code with library method

(also removed unused variable ```ans``` as minor change)
Changed other LZF uses to use the compression codec interface.
Merge pull request #756 from cdshines/patch-1

Refactored Vector.apply(length, initializer) replacing excessive code with library method
Merge pull request #754 from rxin/compression

Compression codec change