Deferring persistence of passcode config.

Previously, passcode configuration data was persisted in the keychain prior to going through the passcode creation or update process.  For the sake of data consistency, these values should not be set until they've been validated by means of a successful passcode creation or update.
Here's the end of the passcode creation/update process, where values are finally persisted.