setup.py: [0.19.x] Use setuptools when invoked with bdist_{egg,wheel}.

This makes it easier to build eggs and wheels of 0.19.x releases; the master branch already uses `setuptools`.

I tried to make this as minimal as possible and to only use `setuptools` for the `bdist` commands, to reduce the likelihood of something breaking unexpectedly because of `setuptools`.