Cleanup mechasim, include

Prior to this commit we did not include in our class.
This commit moves the include inside the class and also adds
a new mechanism option so its not hardcoded to DES2 ( though it defaults
to it