NGINX Controller, 2fa for client connections and companion app support
Summary:
- Companion apps can register themselves and are used to notify the app via firebase (no data besides an id in the firebase notification)
- Authentication attempts are tracked and can be accepted/denied,
which will then succeed/fail future authentication attempts from the
same ip/username pair.
Differential Revision: https://git.kolab.org/D2674