implement fibonacci using caching, implement binomial coefficient
two examples of dynamic programming