* Fix#908, a Firefox MFA login error, by adding logic that checks for the
Firefox edge case where redirect_with_hash returns a Response object rather
than a string
* Add test case for this scenario
By removing the recomputation from `update_list` we get faster CLI module upgrades and it only performs the autoupdate when using the autoupdate wizard or cron.
* [IMP] module_auto_update: Create new module
* Add checksum_dir and checksum_installed fields to ir.module.module
* Add checksum_dir to compute current checksum of module directory
in addons path
* Add checksum_installed to store checksum of module directory
when module was last installed or upgraded
* Use checksumdir Python library to compute module directory sha1
hashes, ignoring pyc and pyo extensions
* Extend update_list method to compare modules' checksum_dir and
checksum_installed, then change state of modules with differing
checksums to 'to upgrade'
* Replace Apps/Updates menu item with menu item of same name, which
updates apps list and displays tree view of ir.module.module
records with state 'to upgrade'
* Extend create and write methods to store computed checksum_dir as
checksum_installed during module installation and upgrade, and
set checksum_installed to False on uninstall
* Use context to stop checksum_installed from being updated during
upgrade/uninstall cancellation
* Add cron job to periodically check for module upgrades by
comparing checksums, then perform any available upgrades
* Extend upgrade_module method (called by cron and 'Apply Scheduled
Upgrades' menu item) to call update_list
* Add post_init_hook to store checksum_installed of existing
modules
* Add test coverage
* [FIX] module_auto_update: Fix test broken by changes
* Use dummy module to test update_list method instead of
module_auto_update
* [FIX] auth_totp: Permissions fix and other tweaks
* Slightly reword README
* Replace LasLabs logo with OCA one
* Overload _build_model in res.users model to add two MFA fields to the model
class's list of self-writeable fields, allowing these fields to be edited by
users without admin permissions for their own record
* Update view_users_form_simple_modif and the unit tests in the module based
on the self-writeable field change
* [IMP] auth_totp: Admin support
* Add MFA fields to normal res.users form view for admin access
* Update record rules to give admins read/unlink access to MFA authenticators
* [FIX] auth_totp: User deletion
* Add ondelete='cascade' to the res.users.authenticator.create wizard model to
properly support deletion of users who have just created an MFA authenticator
* [FIX] auth_totp: Website compatibility
* Add website compatibility by modifying the decorator on one of the routes and
updating the login_success request parameter as needed