rename hash namespace to shash (secure hash) in order to avoid clash with new std:: namespace