Two-factor authentication
Implement's Two-factor authentication using tokens.
- 
Authentication logic 
- 
Enable/disable 2FA feature 
- 
Make 2-step login process if 2FA enabled 
- 
Backup codes 
- 
Backup code removed after being used 
- 
Check backup codes for mysql db (mention mysql limitation if applied) 
- 
Add tests 
- 
Test if https://github.com/tinfoil/devise-two-factor#disabling-automatic-login-after-password-resets applies, and address if so 
- 
Wait for fixed version of attr_encryptedor fork and use forked version - https://github.com/attr-encrypted/attr_encrypted/issues/155