Structured for multiple data backends

Also has basic implementation for InfluxDB. Holding off on the merge until Flapjack's related branches have been updated.