Users can disable caching globally by setting the cache size to zero in their config. However, this does only effectively disable the caching layer, but the code is still in place.
We should consider to remove the caching wrappers completely for this case. The tricky part is, that we insert the caching layer at compile time, ie, when calling `StreamsBuilder#build()` – at this point, we don't know the configuration yet. Thus, we need to find a way to rewrite the topology after it is passed to `KafkaStreams` if case caching size is set to zero.