Misc improvements
Some changes and improvements
Most notable:
- dedicated edge type that can be used with nohash-hasher
- disjoint p3 count lb based on sorted_p3_list in context
- randomized branch selection during branch and bound
- type def for type of k (now usize)
- better use idioms