Nested the implicit writes
Given up on the memo technique from stackoverflow so cutting it out
Starting to use abstract method for injecting f
Build option to use advanced feature of scala
f is an abstract def that we pass in
Making memo generic again
Generics on trait for memo2