Cache flows in production and by config switch

Adopts a similar pattern used in the existing ```SmartAnswer::FlowRegistry```
class whereby production defaults to caching flows and options passed to
registry control the caching of flows.
See https://www.agileplannerapp.com/boards/105200/cards/5843