Merge Request, Code Stable enough for version 1

The following request aims to internally enable  the prior work that's ben done in the crypto module it is now safe to include. The syntax of the code might change but not properties of the already implemented functions.