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. 
Yeah, it makes sense. The null is intentional.