Remove GetTxOfNameAtHeight and its usage.

Only use CreateGameTransactions when actually connecting new blocks
(when it is necessary).  This allows us to get rid of
GetTxOfNameAtHeight without replacement, which in turn makes name
pruning easier in the future.
Remove CNameDB::test().

The routine was never really used anymore, and even if enabled just did
something similar to name_debug.
Re-introduce GetTxOfNameAtHeight with sanity check.

Move the sanity check for game state height from CreateGameTransactions
(where it fails for reorgs) to GetTxOfNameAtHeight.  In constrast to the
previous implementation of GetTxOfNameAtHeight, this one can only
retrieve the latest entry but errors out if the height requested is too
early.  This should not happen with the current implementation of
CreateGameTransactions.
Implement nameindex pruning.

The new RPC command "prune_nameindex DEPTH" can be used (similarly to
prune_gamedb) to remove old entries from the nameindex.  This should not
affect ongoing operation, unless a chain reorg happens beyond the kept
depth.

Removed are entries that are both "too old" and not the current one of a
name, as well as names which were killed already before the given
height.
Merge pull request #77 from domob1812/prune-namelist

Implement pruning of nameindex.