added lazy and strict modules. (strict is the same as lazy for the moment)