pre-release execution functionality in separate api

Apologies for the monster pull request.

This contains execution functionality in a separate `maestro.api.exec` module. This is not yet intended to be used by users, and we may make backwards incompatible changes at any time.

Known issues in this early version of the execution work:
  1. The `viewHive` zip bug
  2. Missing documentation
  3. Missing stats for the query executions
  4. Missing sqoop execution trait
  5. Use of dummy configurations for upload instead of taking the configuration for the execution
  6. Methods in the Miscellaneous module free to a good home
  7. `ViewExecutionSpec` using a custom matcher that should exist in thermometer
  8. The framework around running the execution is not done yet
  9. The framework around configuring executions, if that is what we want, is not done yet
The trouble with the promise approach is that there is actually a lot of functionality around thread pools and so forth that scala takes care of for you if you do it this way ... but if you use promises, you don't get any of that. It's up to you to run the computation concurrently, manage resources appropriately, handle exceptions, etc.