speed up random test slightly

...by caching hexes. Also, correct the "1000" typo - it's actually 100.
expose stealthtx
Script().writeXX convenience methods

Script().writeOp('OP_CHECKMULTISIG'), or...
Script().writeOp(174), or...
Script().writeBuffer([push data buffer]), or...
Script().write([op string, number, or push data buffer])

These convenience methods let you easily write a script.
Add error for when pushdata is exceptionally large
initialize transaction

In order to add convenience methods to a transaction, such as pushing new
inputs and outputs, we need to first have the notion of an initialized
transaction, which is actually not blank. An initialized transaction just has
default values for everything, such as no inputs and no outputs, and default
version and nlocktime.