Track failures separately from attempts

This makes tasklogs of tasks that have been restarted a lot easier to
handle and is also a good first step towards treating user-initiated
interruptions of work differently from actual failures.
Change jobs tests to accomodate Task.failure col
Change identity test to value test
Merge pull request #230 from guidow/failure_count

Track failures separately from attempts