Use web workers to compute SHA256

A new pull requests with local branches for #473. Address/fixes #186.
Code is simple, so I do not think this is big issue, but I agree that it is not the best. :-)