Reject transactions with excessive numbers of sigops
Simplify and rename CheckWork to ProcessBlockFound
Allow -onlynet=onion to be used

Just an alias for onlynet=tor, but matches the new name
of the proxy option -onion= better.
Add IsReachable(net) function

Allows other parts of the program to query for reachable
status of a network. Similar to IsLimited(net).
Add GetNetworkName function

Returns the network name for an Network enum.
Added bullet point

To make it easier to add new requirements if necessary
Fixes ignored qt 4.8 codecs path on windows when configuring with --with-qt-libdir
[Qt] move SubstituteFonts() above ToolTipToRichTextFilter

- doesn't belong to the ToolTipToRichTextFilter class so move it up
Merge branch 'patch-4' of git://github.com/benhc123/bitcoin into merge-PR4653

Merge #4653
URLs containing a / after the address no longer cause parsing errors.
depends: add shared dependency builder

See the README's in depends for documentation
build: fix FDELT_TYPE configure check

This probably never worked properly. Confirmed working now with every compiler
I throw at it.
libc-compat: add new symbol that's now needed
Add a way to limit deserialized string lengths

and use it for most strings being serialized.
Simplify serialize.h's exception handling

Remove the 'state' and 'exceptmask' from serialize.h's stream implementations,
as well as related methods.

As exceptmask always included 'failbit', and setstate was always called with
bits = failbit, all it did was immediately raise an exception. Get rid of
those variables, and replace the setstate with direct exception throwing
(which also removes some dead code).

As a result, good() is never reached after a failure (there are only 2
calls, one of which is in tests), and can just be replaced by !eof().

fail(), clear(n) and exceptions() are just never called. Delete them.
Fix typo in gettransaction help
[Qt] Add TRY_LOCK back to peertablemodel
remove unused class CAddrMan; from db.h
Make CCryptoKeyStore::Unlock check all keys.

CCryptoKeyStore::Unlock has a loop to attempt decrypting each key which
 only executes once, likely due to a simple mistake when the code was
 originally written.

This patch fixes the behavior by making it check all keys. It also adds
 a fatal assertion in the case some decrypt but some do not, since that
 indicates that the wallet is in some kind of really bad state.

This may make unlocking noticeably slower on wallets with many keys.
Dont run full check every time we decrypt wallet.