Added actual PAM module, updated docs, and made a few minor fixes

Once this is merged, I'll be ready to make an alpha release.
I took care of this while refactoring for duplicate arg checks.