Added most cryptographic functions

- Symmetric encryption/decryptions yet to be done
- Some testing done, but need more rigorous ones to ensure correct outputs