(#6371) Update lastchg field when updating password

On Solaris the `password=` method updates the `/etc/shadow` file directly
to set the new password but it does not update the `lastchg` field to
the current day. This way a password can expire even though it was
updated with puppet.

The fix was first supplied in commit 6ef1d3a but was later removed after
a refactor in 7900a66.