Added more documentation to the compression code and slightly simplified the dictionary encoding algorithm.
Simplified dictionary encoding even more.

1. No need to store the "index" for each value in the dictionary.

2. Use an array instead of a hash map for decoding.
Removed the position argument in ColumnType.extract / extractInto.
Refactored column iterator interface to remove computeNext().
Improved size estimation for compression algorithms and added licensing header to all files.
Merge pull request #150 from amplab/compression-clean

Column compression cleanup