Encapsulate CLevelDB iterators cleanly
Add address-based index

1) Maintain a salt to perturbate the address index (protection against
   collisions).
2) Add support for address index entries in the block index, and
   maintain those if -addrindex is specified. It indexes the use of
   every >8-byte data push in output script or consumed script - or in
   case of no such push, the entire script.
3) Add a searchrawtransactions RPC call, which can look up raw
   transactions by address.
Merge branch 'addrindex' of https://github.com/sipa/bitcoin

Conflicts:
	src/bitcoinrpc.cpp
	src/main.cpp
fixed something in main
merged
patched bitcoind to report getrawmempool and searchrawtransactions
Merging sipa’s watch-only
ok…