Simplify implementation of lookup

Primarily:
 - don't need a stack for the delegates, as there's one or none
 - don't need to keep 'filled'; by only considering a method if it's applicable to all arguments so far, we can just see what's left at the end