foldLeft/foldRight using the other
append using fold
flatten using fold