This commit removes "avatar_url", "bot_type", "email",
"full_name", "is_active" and "owner_id" fields from bot
objects passed in "realm_bots" as user objects in
"realm_users" already has those fields and clients can
get the data needed from it.
Also removes the code to send realm_bot/update events
when changing these fields.
Previously, users who were permitted to change their own role
had no way to do so, as there was no setting available for this
functionality.
This commit adds a setting under Settings > Account & Privacy
that allows users to change their own role if they have the
necessary permission.
For more details regarding role change permissions, read:
<https://chat.zulip.org/help/user-roles>
This commit moves bot related code from settings_users.ts to
settings_bots.ts as we have different panels for users and bots
and we already have code for multiple tabs in settings_users.ts
and separating bots code makes maintaining the code easy.
This commit renames variables, functions and element IDs used
for bots table such that the name make it clear that they
are being used for "All bots" table. This commit is a prep
commit for further commits which would add tabbed view in
bots panel with "All bots" and "Your bots" tabs.