Previously on error the program simply exitted. This will allow script
writers to write error handlers to be called whenever any phase fails.
Change-Id: I3f8025663700192e9d8132a0e9122b4e0085ebbd
This change has been discussed and planned for a while. We have not used
migrations much in TripleO, so it was not clear that it was necessary.
But as we move to HA deployments we need a way to run scripts after the
system state has been asserted, which is what migration is for.
Change-Id: I16d90abb3fccc791001beb5d8ed267fcd00f820c