Expose data to views as helper methods

Instead of overriding methods to insert instance variables.

This fixes #928