Isolate pure abstract class RleDecoder in its own header file.

Separate per-version factory creation into its own translation unit,
preparing for introduction of integer RLE version 2.
Correct unit test to use proper assertion macro.
Refactored LocalFileReader, moved ColumnPrinter logic into separate files.
More efficient memory allocation while parsing (work in progress).
Revise protocol buffer binding generation.

Use the CMake "Protobuf" package's protobuf_generate_cpp function, which
we have already been loading but not using in its entirety.

Make use of whitespace more consistent, aping the style used in the
CMake tutorial.
Merge pull request #3 from seh/seh/use-cmake-protobuf-package

Revise protocol buffer binding generation.
Merge pull request #4 from seh/seh/isolate-rledecoder-interface

Isolate RleDecoder interface into its own header file
Integrate the Google C++ Mocking Framework, which includes and subsumes
the Google Test framework.
Correct unit test to use proper assertion macros.
Replace explicit array allocation in unit tests with use of std::vector.