Password Generation Library

(I'm mostly creating this PR so Travis will run the tests. Cough.)

Features:
* Generate a random password

Other changes made by this PR:
* Added test cases
These comments are a bit redundant, it's pretty clear what's going on in the code. :)