HBASE-8693  DataType: provide extensible type API (Nick Dimiduck)

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.95@1512927 13f79535-47bb-0310-9956-ffa450edef68