Allow the step to not process if data is missing

Some of the steps will rely on routed, post and get data to
complete their task. This gives them the opportunity to inform
the controller that they can't complete the task due to a lack
of data. The controller can then 404 for our user. More likely
is this is a mistake by a dev that will need to be addressed, but
stops us attempting un-completable processes.