DRILL-4517: Support reading empty Parquet files
1. Modified flat and complex parquet readers to output schema only when requested number of records to read is 0. In this case readers are not initialized to improve performance.
2. Allowed reading requested number of rows instead of all rows in the row group (DRILL-6528).
3. Fixed issue with nulls number determination in the row group (fixed IsPredicate#isAllNulls method).
4. Allowed reading empty parquet files via adding empty / fake row group.
5. General refactoring and unit tests.
6. Parquet tests categorization.
closes #1839