Added basic doc for HA
Added singleton and voting sections and corrected

I addressed several redaction issues and added sections for
voting and singleton workers as commented by @rogpeppe
Made gramatical corrections suggested by @mjs
added dry run support for upgrade-juju
Introduce the changes to track a Request.Version field, add tests in the json codec.
Change the MethodCaller function into a FindMethod function that takes a version parameter.

This should let us end up with it behind an interface, and give us both Serve and ServeFinder.
Change rpcreflect.MethodCaller to be an interface.
And reimplement the CustomCaller as CustomMethodFinder using that new interface.
found something with go vet
test suite is happy with a new MethodFinder implemenation.
I wasn't able to get 'InterfaceMethods' to work the way we want, because
they always fundamentally get unwrapped, but that is ok since it still
works better for us.
That is the last of the RPC changes that aren't the registry itself
Finish implementing a FacadeRegistry type and exposing it.

Rather than using utils/registry.TypedNameVersion because utils has been
moved anyway, and we only had one genuine user of it.
simplified upgradejuju dry run test
move over all of the API facades to the new structure, still needs thorough testing.
changing the name in the file, forgot to change it in the test.
we need to register the Networker worker

This gets the api/networker tests passing, which means all tests seem to be
ready.
changed upgrade-juju dry run option to --dry-run
Added note on singleton vs concurrent

After talking with @fwereade I added a note explaining that
singletons, as they are documented righ now, are only a reflection
of current status but should be considered as wrong and will be
re-implemented properly, as concurrent workers, in the future.
Corrected two gramatical errors
added test for call dispatching
made the test more standard conform