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
If the output table is specified than the table is created before running the query, that should be added as a scaladoc comment.