Cleanup resolution bugs with wait(), eliminate Waiter trait