IMPALA-144: partition pruning for arbitrary predicates that are fully bound by partition columns

This makes partition pruning more effective by extending it to predicates that are fully bound by the partition column,
e.g., '<col> IN (1, 2, 3)' will also be used to prune partitions, in addition to equality and binary comparisons.
Fix pre-hive 9 rc file scanner.
IMPALA-36: Connection metrics for Thrift servers
Catalog loading now accesses volume id internals to get at disk id.
IMPALA-136: GROUP BY float/double.
Add GetRuntimeProfile RPC and enable printing runtime profile from impala-shell
Parquet writer.
IMPALA-149: Serialize Hive Metastore metadata loading

This change serializes the Hive Metastore metadata loading code to workaround HIVE-3521
IMPALA-151: bad DCHECK on "select count(foo, bar)" queries
Parquet data loading.
IMPALA-65: Add MySQL-style string literals with escaping.
IMPALA-152: SELECT ... ORDER BY without specifying a table name fails with IllegalStateException
Fix IR gen build dependency.
Fix buildall.sh
IMPALA-138: Error messages for unknown column types are particularly bad.
IMPALA-166 SimpleScheduler::HasHost should hold host_map_lock_
Add query string to runtime profile.
Allow impala hbase serdproperties to have newlines
Improve parser coverage

This patch adds support for the following SQL constructs

  - Unary + operator
  - The ALL keyword, in SELECT ALL and SELECT aggregate_func(ALL *)
  - REAL and INTEGER as type synonyms for DOUBLE and INT respectively
  - The AS keyword after a table spec. e.g. SELECT * FROM tbl AS t0
Stop printing the query string in impala-shell when running the 'profile' command

This information is now embedded in the runtime profile so there is no need to print
it twice.