Add missing forwarding in materialize + comments
Rework generate

Still ugly as heck.