Support self-types containing ParamSpec (#15903)
Fixes https://github.com/python/mypy/issues/14968
Fixes https://github.com/python/mypy/issues/13911
The fix is simple, as I predicted on Discord, we simply should use
`get_all_type_vars()` instead of `get_type_vars()` (that specifically
returns only `TypeVarType`). I also use this opportunity to tidy-up code
in `bind_self()`, it should be now more readable, and much faster
(especially when compiled with mypyc).
cc @A5rocks
---------
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>