added implementation attempt at List[A] for trait Foldable