Move validation out to separate method also

Subclassess seeking to change to a different crypt can no simply
override validateHash and generateHashForPepperedString.