Tracking deployment status into context on error

An instance of Engine Factory can be used as a context manager to
supervise a status of the deployment on occured errors. Transitions
which are processed:

    (DEPLOY_STARTED | DEPLOY_FINISHED) -> DEPLOY_FAILED
    CLEANUP_STARTED -> CLEANUP_FAILED
    DEPLOY_FINISHED -> DEPLOY_INCONSISTENT

Change-Id: I098865057b8d95ae60a79bd49dc2e5026e5fd87d
Merge "Tracking deployment status into context on error"