load modules and create objects on demand
