adds caching to increase view performance
adds more tests OHHH YEAAA