Allow letrec without parameters

[error] Type inference of foldl returns wrong result
Add library functions

[typeinf bug]
foldl, foldr, filter, intersperse, all