Add support for common hive params.

Motivation was to set the job name on the jobtracker UI,
but this also exposes a few other common params.
Merge pull request #45 from jcrobak/hive-hiveconfs

Add support for common hive params.
Refactor hive functions into client, add thrift client

HiveClient interface for:
  - table_location
  - table_schema
  - table_exists
Implementation using `hive` invocations, and the thrift metastore
client.

Note: this changes the table_location function to take a dict instead of
a partition string
Merge pull request #48 from JoeEnnever/hive

Refactor hive functions into client, add thrift client
failure setting for missing tables on partition target

- resolved merge issues
If the user interrupts the job, kill it
Some of the db/table calls were reversed.
Merge pull request #65 from jcrobak/fix-mixedup-db-table

Some of the db/table calls were reversed.
Merge pull request #57 from rathboma/master

Added a flag to HivePartitionTarget to prevent failure if a table doesn't exist
Merge pull request #64 from erikbern/kill-interrupted-hadoop-jobs

If the user interrupts the job, kill it
Merge remote-tracking branch 'upstream/master'

* upstream/master:
  Some of the db/table calls were reversed.
  If the user interrupts the job, kill it
  failure setting for missing tables on partition target
  Refactor hive functions into client, add thrift client
  Add support for common hive params.
cli.py does not need to be executable
console entry point + test