Support for creating a store-service for Storm platform

To be able to do leftJoin on a store we need the same object to serve as a store and a service. This is already supported in the Scalding Platform (https://github.com/twitter/summingbird/blob/1b630690a8efe554ab3fabc9b60965c2c95e2e83/summingbird-scalding/src/main/scala/com/twitter/summingbird/scalding/Service.scala#L46). This adds a trait to the Storm Platform that is of both P#Store and P#Service types. This can be used in jobs that use leftJoin against store. Users in their jobs can call:

```
Storm.storeService(mergeableStore, serviceStore)(batcher)
```
where the mergeableStore is the store for aggregation (delta store) and serviceStore is the store that we use as a service (can be delta store or the total store). For read-modify-write behavior the serviceStore should include the delta store, i.e. serviceStore can be a client store that wraps the delta mergeableStore or a client store that wraps the delta mergeableStore and the offline store (i.e. the total store). 
I'm not sure on the rationale behind having this lazy construct here and not in other places. AFAICT StormBuffer is not used anywhere either?