Currently, when an error happens on the Go side when parsing an address (both ways) the error is not returned to the contract, but instead the contract is halted.
We should add a Buffer field to the Go callbacks that will be filled in when an error happens, and then that error string should be passed into the wasm contract.
On the contract side, we need to expect it, and if we get it, convert it to an StdError variant.