Views now use inheritance

Changed composition to inheritance because it's much better fit for the
flat structure. Fixes #1