Refactors the Memecrypto API to improve generalized usage. Adds unit tests that verify memecrypto works, so that future changes don't potentially break the code.