Bug Fixes

Bugs fixed:

flavor_type is now used in consolidated payload generation:
flavor_type was being generated from the metadata, but was never used in consolidated payload generation for instances. Instead a fixed item, which would not always be present was used, leading to the 0s in the current data. flavor_type is now used  appropriately

IP allocations and volume resize events are now supported:
IP allocations and volume resizes weren't actually being tracked, the logic was in payload.py but process.py never used any of it. Now matches appropriately

cpu_number is now ignored for identifiers:
cpu_number is actually the number of cpus, not the number of the cpu in question. The misunderstanding came from the incorrect assumption that each cpu was metered separately. However they are in fact aggregated. cpu_utilisation is always below 100% because cpu_utilisation is further scaled by number of cores. So 80% utilisation on an 8 vcpu instance implies an average of 80% usage across all cores.

consolidated identifiers are now cleaned appropriately:
process_raw was changed to properly clean and stringify any fields used in generating the primary identifier. It also appropriately dealt with the cases were any were missing. This was not added to the consolidated version earlier, and now has been.