[WIP][BUGFIX] In-memory columnar storage bug fixes

Fixed several bugs in in-memory columnar storage to make the in-memory version of `HiveCompatibilitySuite` pass (not accomplished yet, 6 failed and 4 wrong cases left being fixed). Compression is also disabled by default and can be enabled by setting `spark.sql.inMemCompression.enabled` to `true`.

@rxin @marmbrus It is reasonable to include `InMemHiveCompatibilitySuite` in this PR, but I didn't, since it significantly increases test execution time. What do you think?