Adds MetricsCollector but hit blocker

- We can't calculate the utility for each agent because we don't have the deadline, the initial price or reservation price.
- Previously, metrics collection happened at the end of each run, but before each run was destroyed - the collector had access to the AgentParameters.