Basic flow implementation

As @kexinrong pointed out for hosts, the environment collects data periodically according to its "interval" parameter. Hence, you can use self.env.interval rather than calculating the same reporting_interval each time.