For review

In my idea, The first version should be
1 able to create temp table with cmd as follows:
```
CREATE TEMPORARY TABLE table_name(field1 filed1_type, filed2 filed2_type...)
USING org.apache.spark.sql.hbase.source
OPTIONS (
   hbase_table "hbase_table_name",
   mapping "filed1=cf1.column1, filed2=cf2.column2...",
   primary_key "filed_name1, field_name2"
  )
```
2 able to query data in hbase
3 some optimization

Hi @yzhou2001， this is the datasource api implementation, i tested it with locally installed hbase which now can query data from hbase sucessfully.  

Here are some important points we should consider when contribute to community:
1 how to integrate the load part since there is no sink interface, in my idea it is hard to pull this in in our first version
2 about metastore i think it is also hard to  pull in our first version 

The reason is that community now do not have metastore and sink interface in sqlcontext, they probably not accept a separate metastore/load for hbase source.