Forgive me, father, for I have sinned.  No more plaintext passwords!

This commit does away with the incredibly dumb idea I had to store passwords in plan text (I was stressed, okay?).  Now we don't generate passwords until a company is invited.

I also changed the way they are namespaced and added some error checking for duplicate usernames.