Move towards compliance with updated spec.

* hex encoding of SHA256
* lowercase hex encoding of nonce
* incoming balances checked against regex
* outgoing balances formatted as shortest possible string matching regex

Also:

* beginnings of validation of arguments (so far, account maps)
* (missing) nonce generation is now part of core
* minor readability, docstring