We need support to choose rollback functionality when a command fails. Similar to Capistrano.
Should be easy enough to wrap this functionality into the Command class.
Should be able to set and clear rollback function/task to call. This way, you can set different functionality based on how far along the deployment execution is.