fix(identity-wallet): normalize ECDSA signature to low-S in simulator path
ATProto/PLC directory requires low-S ECDSA signatures and rejects high-S
signatures with "Invalid signature on op". The ecdsa 0.16 crate's sign()
does not auto-normalize to low-S — roughly half of all signatures would be
high-S and consistently rejected by the PLC directory.
The SE path already called normalize_s(), but the simulator/macOS path did
not. Added normalize_s() call and a test that verifies sign() always produces
low-S output.