add caching to problem76
add problem 77
add problem 78
add initial attempt of problem 79