Add and test MemKBucket.

* Test MemKbucket initialization.
* Test MemKbucket against the superclass testsuite.
* Model replacement cache as a deque.
* Test cache-splitting.
* Test contact replacement from cache.
Protect access to KBucket attributes via an RLock.

* A Kbucket is now a thread-safe object.
Replace TreeRoutingTable by OptimizedTreeRoutingTable.

* Dump splitKBucket inside addContact.
* Some docstring fixes.
* Drop TreeRoutingTable from the testsuite.