This commit lacks discipline.

Adds:
 * take multiple sources from the command line including http
 * Rename .DefaultTime to .MetricTime
 * Add ability to decode json array's using each objects
   index as part of it's key
 * Refactor publishing bit from main into publisher
Add flag to specify item key if input is a list

Rather that always using an item's index aas it's
graphite key, add the ability to specify the item's
key to use instead.
Lowercase keys for consistency