[SPARK-2190][SQL] Specialized ColumnType for Timestamp

JIRA issue: [SPARK-2190](https://issues.apache.org/jira/browse/SPARK-2190)

Added specialized in-memory column type for `Timestamp`. Whitelisted all timestamp related Hive tests except `timestamp_udf`, which is timezone sensitive.
How about we include the following settings in our unit tests?
```
val gmtTimeZone = java.util.TimeZone.getTimeZone("GMT")
java.util.TimeZone.setDefault(gmtTimeZone)
```
`java.sql.Timestamp` is a subclass of `java.util.Date` and the `Timestamp.toString` will refer to the default timezone to generate the string. So, I guess if we explicitly set the Timezone, our test results will not be affected by the actual Timezone.