Update encrypt plugin

Rewrites/updates some of the encrypt plugin to support python 3.

This adds a dependency on 'pbkdf2', as pbkdf2 is no longer included in pycrypto in python3.