Contextual views

Contextual views allow custom views for datafiles in addition to datafile metadata

Included is also documentation and a unit test.