Spark SQL based Shark CLI

Merged PR #337 authored by @chenghao-intel, and then did some refactoring and update, mainly include:

- Minimized `CatalystContext` as we don't care about response code for now, should update after [SPARK-2106](https://issues.apache.org/jira/browse/SPARK-2106) is addressed.
- `CatalystDriver.destroy` should call `super.destroy`.
- A bunch of trivial coding style fix (including original Shark code).
That may be helpful if compare the result between Hive & Catalyst, or can we just NOT document it and only for internal usage?