Generalize view methods to not be layout specific

This PR satisfies #1.