Update CipherContext:
- Add optional iv field for CBC mode
- Add process_cbc() for CBC-specific handling
- Add parse_hex() helper for decryption input
- Separate ECB and CBC processing paths
Update CLI:
- Add --iv argument for initialization vector
- Pass IV through to CipherContext
Add AES-CBC support to Algorithm enum:
- Add AesCbc variant with clap name "aes-cbc"
- Add requires_iv() method to check if algorithm needs IV
- Add new_cbc_cipher() for creating AesCbc instances
- Add encrypt_cbc() and decrypt_cbc() helper methods
- Update parse_text() and Display for AesCbc