Re-implement the binder-swap stuff in OccurAnal
This is a pretty big patch, but it has a very local effect. It affects only the binder-swap mechanism in OccurAnal, which was not working well becuase it's more subtle than I'd realised (See Note [getProxies is subtle]). I think this does a much better job.
Showing with 339 additions and 173 deletions