Refactor plugin setting

Adding support for some plugins was hard.
After this commit, easy to add a plugin that has commonly setting style.

Before:
- Add model, controller, and views for it.

After:
- Add model and controller. view is shared.