create unsigned tx and remember sig_hash for each input

allows the wallet to create transactions spending outputs for which
we don't have the private key, so we can't sign them.
instead, remember the signature hash that needs to be signed, so
they can easily be signed later.
#create_tx and #assemble_tx commands

allows for easy creation of transactions without parsing any bitcoin-specific things
and without the need to reveal the privatekey to the node
Adding 'Compatible with...' section to README.rdoc
fix command_api_spec when SimpleCov isn't installed

  also workaround this warning:

    command_api_spec.rb:35: warning: already initialized constant RULES
require bacon 1.2.0 because 1.1.0 stopped working with new tests
pass the pubkey needed to sign along with the sig_hash
elaborate NODE documentation
fix namecoin expiration; it's 36k blocks
better error handling for #create_tx and #assemble_tx command
improve monitoring of unconfirmed tx
use compressed public keys by default

NOTE: The KeyGenerator will now use different addresses than before!
simple utxo-based storage backend, fix dummy backend
utxo cache, fixes, cleanup
utxo store: cache deleted utxos, implement reorg, cleanup namecoin support
fix some wallet issues to work with utxo store
cleanup storage initialization
enable utxo_cache by default, disable utxo_cache and increase intervals when synced
don't create logger if dir doesn't exist
remove unneeded db query left over from debugging
utxo store optimization