re-factored consolidating view classes and evolving event firing