Diffie Support Stuff

Also prelim. Basic set of functionality. Much unimplemented.