Make metafunctions lazy and add rewrite rules.
Move iterate<> and repeat<> to the Iterable module.
Write an (unfinished) tutorial.