Support custom time series implementations

This is similar to how we support custom map implementations