Update Effect.File to use new failure handling

i.e. using if_valid to test for failure, and update resource accordingly,
rather than using exceptions.