PARQUET-117: implement the new page format for Parquet 2.0

The new page format was defined some time ago:
https://github.com/Parquet/parquet-format/pull/64
https://github.com/Parquet/parquet-format/issues/44
The goals are the following:
 - cut pages on record boundaries to facilitate skipping pages in predicate poush down
 - read rl and dl independently of data
 - optionally not compress data

Author: julien <julien@twitter.com>

Closes #75 from julienledem/new_page_format and squashes the following commits:

fbbc23a [julien] make mvn install display output only if it fails
4189383 [julien] save output lines as travis cuts after 10000
44d3684 [julien] fix parquet-tools for new page format
0fb8c15 [julien] Merge branch 'master' into new_page_format
5880cbb [julien] Merge branch 'master' into new_page_format
6ee7303 [julien] make parquet.column package not semver compliant
42f6c9f [julien] add tests and fix bugs
266302b [julien] fix write path
4e76369 [julien] read path
050a487 [julien] fix compilation
e0e9d00 [julien] better ColumnWriterStore definition
ecf04ce [julien] remove unnecessary change
2bc4d01 [julien] first stab at write path for the new page format