This is quite a major update, with numerous breaking changes.
- separated sync and async Models for clarity (https://github.com/clustree/modelkit/pull/10)
- reworked batching predict logic: `predict` no longer automatically switches between single items and batches. `Model.predict` takes single items, `predict_batch` only accepts lists of items, and `predict_gen` knows how to deal with generators (https://github.com/clustree/modelkit/pull/15, https://github.com/clustree/modelkit/pull/16, https://github.com/clustree/modelkit/pull/19, https://github.com/clustree/modelkit/pull/20)
- caching with native python caches now available (https://github.com/clustree/modelkit/pull/22, https://github.com/clustree/modelkit/pull/23)
- documentation improvements