Enforce salt character maximums; split classes into separate files; make DES class for generating DES passwords; better tests