AuthMiddleware can specify if password change is supported

Also apply singleton to AuthMiddleware to allow access to current middleware instance.
Hide "Change password", "Forgotten password" menu items if password change is not supported by auth middleware.

Unit-tested without regression