Only validate year if it has changed

This is to protect against the scenario where the year for a memory
was valid when it was created but, a year or so after creation when
it is being edited, is no longer valid. We want to be able to make other
edits to the memory without being forced to change the year to a valid
one.

The reason for it being on change rather than just in create is that you
don't want to enable users to accidentally update a memory with an
invalid year.

Signed-off-by: Alan Gardner <alan@armoin.com>