RC4 implementation I wrote