Adds a quick GM implementation. Need code review, but the code is actually pretty simple, and is built on PyCrypto utils, so it shouldn't have RNG problems. There may be a timing attack that lets an eve lowerbound the number of quadratic residues in a ciphertext? I think it's not difficult to fix if it exists, but I didn't want to do it preemptivly.