Tentatively working recursion and at acceptable pmccabe level. Looks done.