Prevent admins from deleting current quarter

- Also, refactor Quarter controller and model code by adding
  callbacks
Add select fields to new and edit Quarter forms
Refactor abilities, pages views, and users views

- Create and move view code into partials