failed commands now throw exceptions to abort a flight