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. 
actually it's the form, it neither `update_attributes` nor `attributes=` unless you're talking about doing it on the model but that would put the form out of sync.