Refactoring, better use of a baseview, dispose and messageviewing.