DA: Support multiple campaigns per node:hour
 * Update DeliveryMetrics.UpdateNodeHour to sum impression count and spend for node:hour metrics from multiple campaigns
 * Remove handling of duplicate rows (not a valid scenario, duplicates removed as canonical delivery data is built)
 * Add campaignId to dedupe key in AppNexusBillingReport
 * Move canonical delivery data field names to their own class
Merge branch 'master' of https://github.com/RareCrowds/OpenAdStack