Added passphrase callback to assist temporary wallet unlocks.

User can now set a `passphrasecallback` option to manage wallet unlocking. The passphrase callback is asynchronous, allowing for command line prompted passphrase entry. See the example at the bottom of the README.md. 

I've also added the full set of JSON-RPC error codes .