Replace unintentional `except BaseException` with `except Exception`
`BaseException` catches `SystemExit`, `KeyboardInterrupt`, and
`GeneratorExit` which is almost always unintended in application code.
This commit replaces three cases where `BaseException` was used to
catch-and-handle (not catch-and-re-raise) exceptions, silently
converting system-level exceptions into normal error handling paths:
- `aiohttp/worker.py`: The gunicorn worker loop swallowed all
exceptions including `KeyboardInterrupt` and `SystemExit` via
`except BaseException: pass`, preventing clean shutdown signals.
- `aiohttp/client_proto.py`: The HTTP data_received handler converted
all exceptions (including `KeyboardInterrupt`) into `HttpProcessingError`
via `set_exception()` without re-raising, silently masking system signals.
- `aiohttp/http_parser.py`: The payload parser fed exceptions into the
payload's exception handler without re-raising for most cases, again
silently swallowing system-level exceptions.
All other `except BaseException` occurrences in the codebase are
intentional: they perform cleanup (closing transports, releasing
connections) and then immediately re-raise, which is the correct pattern
for resource management under `asyncio.CancelledError` and other
system exceptions.
Closes #2444