Enable storing "tags" to transactions with OP_RETURN scripts.

With this change, transactions may optionally include "tag strings" (stored in OP_RETURN scripts).  It also enables detection of unspendable outputs and the `IsStandard` check.  Such transactions are accepted if they occur after the planned carrying-capacity hard fork (`FORK_HEIGHT_CARRYINGCAP`), have at most 100 characters of data attached, and lock 0.01 HUC into the OP_RETURN output.

To add a tag, use the fifth argument of `sendtoaddress`:
  `sendtoaddress ADDRESS 1 "" "" "tag string goes here"`

To read tags attached to a message, use `gettransaction` or `getrawtransaction`.