Based on #450, with commits restructured by Rein Zustand. Tweaks by Rein Zustand: - Replace configure-cert with generate-self-signed-certs - `mv scripts/lib/create-zulip-admin.sh scripts/lib/create-zulip-admin`