Revert "Actually use mapAlreadyAskedFor."

This reverts commit 643160f6e7e5e8ca84bc7d2c1a0f37d9cf43a6e1.

Turns out this commit was useless after a more careful reading of
CNode::AskFor
Add a limitedmap class similar to mruset
Move mapAlreadyAskedFor to limitedmap

This will result in re-requesting invs if we are under heavy inv
load, however as long as we get no more than 16,000 invs in two
minutes, this should have no effect on runtime behavior.
move multiwallet-qt.txt from root to doc folder
Fix signed/unsigned comparison warnings
Shutdown cleanup prep-work

Create a boost::thread_group object at the qt/bitcoind main-loop level
that will hold pointers to all the main-loop threads.

This will replace the vnThreadsRunning[] array.

For testing, ported the BitcoinMiner threads to use its
own boost::thread_group.
Rename util.h Sleep --> MilliSleep

Two reasons for this change:
1. Need to always use boost::thread's sleep, even on Windows, so the
sleeps can be interrupted (prior code used Windows' built-in Sleep).

2. I always forgot what units the old Sleep took.
LoopForever and ThreadTrace helpers
Port Thread* methods to boost::thread_group
Clean up shutdown process
Have Qt poll for shutdown requested, the QT way.
Update transaction statistics

As these were not updated when 'backporting' the 225430 checkpoint
into head.

Additionally, also report verification progress in debug.log, and
tweak the sigcheck-verification-speed-factor a bit.
Merge pull request #2453 from sipa/txstats

Update transaction statistics
Merge pull request #2357 from gavinandresen/shutdowncleanup

Thread / shutdown cleanup
Merge pull request #2449 from Diapolo/doc

move multiwallet-qt.txt from root to doc folder
Merge pull request #2423 from TheBlueMatt/limitedmapalreadyaskedfor

Limited mapAlreadyAskedFor