Avoid deleting transient cluster before job is started

In order to run job on a transient cluster client needs to execute
two commands:
 * create cluster with is_transient=true
 * run job on it in a regular manner

We terminate unneeded transient clusters in a periodic job, which
terminates cluster if cluster is transient and no job is running on it
at a time. We also do not terminate cluster if its lifetime is smaller
then config parameter min_transient_cluster_active_time. For some
reason the parameter is set to 0 by default, which could cause
premature cluster termination if periodic task runs between
cluster creation and job execution.

Also added unit tests to verify min_transient_cluster_active_time.

Change-Id: I5330a969ea7cd81ec2759a7fe32bab4a5de3fb4c
(cherry picked from commit 400d90da07ecabeffca17bf9ca7bbe85339345cf)
Merge "Avoid deleting transient cluster before job is started" into stable/icehouse