Add support for cracking PDF files

Add support for cracking PDF files. 

I could not determine if OpenSSL's RC4 implementation is faster or slower than the one used in this patch. So for now, this patch uses its own RC4 implementation. This bit can be fixed in a later patch.