Reduce plugin footprint
Add support for role based 2FA
Fix the bug with the extra attempt allowed when no secret is set for a user