Change from being a per-serializer attribute to being a per-repo attribute. This means we have some churn on *all* of the serializer apis, but it means we *don't* have churn on all of the repository apis.
It makes it more thread-safe, since serializers are global instances. Repositories aren't currently thread-safe anyway. (get_record_stream() specifically is known not to be thread-safe on 2a format repos.)