Crypto

This is a preliminary submission to add support for encrypting Python bytecode using PyCrypto's AES
block cipher module. We are using it on both Windows and Linux and it seems to work fine at the moment.

This shouldn't be merged just yet since I might have overlooked some detail (especially on the crypto side of things).

It is mostly working, but it requires PyCrypto 2.4. Newer versions of PyCrypto have changed in structure, which makes bundling the AES module a little more difficult. However, I'm open to pursue alternative routes such as bundling PyCrypto code within PyInstaller or looking for a standalone AES module on PyPI.
Could you please implement this behavior for --key option?
* When user uses --key option then check if pycrypto is available.
* If pycrypto is not available and the user uses --key then print error message that pycrypto is required and where the user can get it.