Replace AgeKeySource/resolve_age_key/install_age_key with IdentitySource/resolve_identities.
Update integration tests to use a valid age bech32 key fixture.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Three tests covering the full bootstrap path: dot-hook execution with
symlink verification, setup-hook skip-on-rerun via state file, and
fail-fast behaviour when the age key is missing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>