use k-bucket for routing table

replace any manual table-related operations with k-bucket ones
improve nearly every table-related operation
improve dht traversal in getPeersQuery
re-order timeout callback/clearing