ListADT: dispense of private sub list2str; pass a closure to role TList instead
add List-function $append plus tests
foldl: swap args to supplied function st it's like in Haskell (accumulator value on the left for foldl and on the right for foldr)
fix lambda expression s.t. they actually parse