Reset fields when no selected on save

Bit messy with private methods but I think we could probably abstract this further but wanted to get proper conditional validations in first and make sure all the forms are aligned.

other work address clearing still to do. Adding now...

btw, it's done in `valid?` so that any validations we add will take into account that these fields are blank. 
Instead of branching in the method I think it's better to delegate to the callback macro, e.g.

```ruby
before_validation :clear_new_job, if: :found_new_job

def clear_new_job
  update_attributes new_job_start_date: nil, new_job_gross_pay: nil, new_job_gross_pay_frequency: nil
end
```

`update_attributes` will enumerate the hash and send to the setter methods, so it's just a shortcut for the `self.` syntax.

Also, how do you feel adding a `!` to the method name? I'm on the fence about it because it does mutate the object and discard state.