This branch is still not tested. Didn't we discuss passing in a callback to StoredKeyChecker so we can fake out the user interaction?