flag status of deployment and treat most exceptions as a failed deploy

Writes the information into `finished.json` which can be utilized
during testing to determine the stage of the deploy (finished or not)

Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>