moved common view manager stuff out into abstract base class and prepared for proper EF view manager