[FLINK-1219] Add support for Apache Tez as execution backend

This allows Flink programs to be executed as Tez DAGs.

Up for comments, not good to merge yet.

The commit to make hadoop2 the default profile will eventually be a separate commit and issue,
rethrow as a RuntimeException