workflows: aborting and skipping

* Adds support in the workflow engine for aborting execution and
  skipping objects using new functions `eng.skipToken()` and
  `eng.abortProcessing()` that will not save the workflow object.
  Useful in complex workflow where for example the workflow object
  is deleted as a final step in a task before aborting/skipping.

* Removes legacy DEBUG flag from engine as logging is anyway logged
  with the debug loglevel.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
it would be nice to use similar pattern in Flask for handling exceptions (https://github.com/mitsuhiko/flask/blob/master/flask/app.py#L1539) using `register_error_handler` (https://github.com/mitsuhiko/flask/blob/master/flask/app.py#L1125) and try to find common parts to keep it DRY.