Use failed_when instead of ignore_errors

ignore_errors still displays red on the screen and it looks like a
failed task. Makes it difficult to grep logs and visually inspect
output. failed_when does not do this, instead it just looks as if it
were a success, which is what we're after. The return json still marks
the task as failed so we can use that data elsewhere if desired.
Merge pull request #611 from blueboxgroup/cleanup-ignore-errors

Use failed_when instead of ignore_errors