Factor batch from online

Continues on from the previous PR. With this online and batch should be entirely separated. 

Requires having some new flatmap operations in the storm platform to wrap user supplied ones to control where we expect timestamps/batch id's to go for aggregation to work correctly.