Initial commit
Changed 3bc to use memoized decorators to cache values between recursion