Add unit tests

This tests both `View` and `expressView`.  The only thing that needs to be tested is the fallback to the old view, but that needs #2 to be pulled in first.