unit tests
progress
get hash working