Annotation-driven, component-scan, view-resolver