It was getting confusing to have the arbirary handling of manifests in
the blobstore. It also prevented us from using model.Ref in the
blobstore because of cyclic dependencies.
This is much easier to grok now.
This allows for better error messages when decoding fails. For example,
instead of:
{"code":"invalid_json","message":"unexpected end of JSON input"}
We now get:
{"code":"invalid_json","field":"manifest","message":"unexpected end of JSON input"}
This allows users of the ollama client library to need only import the
client/ollama package, rather than the oweb package as well when
inspecting errors.