Fixed the recursive base case so that each recursive call counts down instead of up making the choice of how many generations a parameter instead of a hard coded number