Remove redundant casts.
Move the meat of helper functions directly into Search_DoWork.
Add lcthw linked list.
Clear prev and next when removing first and last, respectively.
LIST_FOREACH tolerates removing current node.
List_remove_all removes all nodes with a given value.
Hooks.
HookAddPeer
HookInvalidMessage
HookHandleMessage
HookSendMessage, HookReceiveMessage
Move Hooks and structs exposed by them to dht.h