Add Challenge 5

Change key_xor to allow multi-byte keys.
Update some test cases which broke in the meantime