Harden the flake8 lint option
Fix a test
Redesign initializer registration
Fix import path to adapt the recently preferred way

Now `flask_foo` is more prefer than `flask.ext.foo`.
Related issue: mitsuhiko/flask#1092
Improve discover_ext_name() to other types of the extension path

Related issue: mitsuhiko/flask#1092