Change disconnect() to disconnect(expected=True), remove _has_quit.
Refactor ping timeout handler to not send client PINGs.

Instead rely on the server to send PING commands, in accordance with
RFC1459.
Rename _requests to _pending.
Restate advantages in README.

Source code size isn't really that much of an issue when it is
well-organized, and I honestly can't be bothered updating the number
everytime something changes. It's mostly a subjective advantage anyway.
Rename IRCError to Error.
Restrict connection API, remove redundant error class.
Restrict API directly imported into the pydle namespace.
Improve API structure documentation.
Change ClientPool API to reflect future changes.
Make super().on_raw_XXX() always safe in features.