add missing hashes, clean up code

this pull does 2 things and can be broken up into 2 pulls if needed

1. adds sha224 and ssh384
2. cleans up the whole buffer factory setup and all of the hashes export themselves instead of a factory
LGTM