Remove global mutable serializer registry

This is the logical extension of earlier work to always pass the
Writes around (and to pass only Writes, not the whole Format).

With those earlier cleanups it isn't such a big deal to pass
the serialization registry around where it's needed too.
Exactly. On the server side, these serializations are fixed once we load a build. So as long as we cache across the build it should be fine. On the client side, we do allow them to change but any reasonable client will just set them once on startup. Actually we probably need to fix SbtClient to make you set them on startup, because it's a race otherwise (both before and after this patch - this patch doesn't create or fix that problem).