Ignore /ext.
Commit finished some refactoring and pattern clearnes.
Merge branch 'Generalize_for_MVC_pattern'