v.2 with new validation method.

Using multiprocess to fork a new process to check the password.  I have also set a timeout that can be configured.  You really shouldnt need more than 5 seconds as the check is pretty fast.

The code is pretty ugly as I haven't had much time to clean it up and there have been a lot of methods being tested and debug code slung around.  Ill clean it up when I get a chance.  

Also, I have updated the decrypt function to work, the bruteforce needs to be updated to work, todo...