reworked generators into cloning and added module (i.e. fab) wrapper