Fix issue with Celery control signals not being received after the 2nd time.

There are two issues with kombu/common.py that need to be fixed with this PR. First, the code attempts to avoid declaring exchanges more than once. The problem is that Celery control signals leverage the auto_delete flag, which will delete exchanges when there are no more messages. The other issue appears that the exchanges are not being bound to any channels.

1) Avoid trying to cache entities that have auto_delete=True (i.e. Celery control signals) -- reverts back to original behavior in v3.0.18.

2) Bind the entity if it currently is not bound.