Hashing API

Here is the Hashing API I have written as part of my GSoC project. Also added a  check of policy files for JCE in JCELoader. 
Does Bouncy Castle have bugs filed for these? It may make sense to add tests to check that these are still broken, so that when / if those tests break the workaround can be removed.

Would this be more concise as a switch statement?