nn.ModuleList has to be used in order to register layer parameters as module parameters (similar to add_module)