bugfix for mdoc update with --dropns feature

There was a limitation with the prior release identified which happened when you ran mdoc update with multiple assemblies in the list. Previously, the "namespace drop" was assumed to be for all referenced types, however, that was an invalid assumption.

So this new version of mdoc introduces a new command line parameter: `--dropns-assemblies`. This is to be a comma separated list of assemblies that have dropped the assembly. This was required because otherwise there's no way of knowing which assembly to apply the changes to.

so a sample invocation would go like this: 
```
mdoc update assembly1 assembly2 --out=en -dropns --dropns-assemblies=assembly1
```

This pull request also contains an automated test for the plain-vanilla case of `-dropns`, and also to reproduce/test this new `--dropns-assemblies` functionality.
If it's per assembly then it should be part of `--dropns-assemblies` (and rename to `--dropns`, which should be extended to support `ASSEMBLY=NAMESPACE`:

    mdoc update --dropns monotouch.dll=MonoTouch --dropns AssemblyName.dll=SomeNamespace ...

This could be done via:

    { "dropns=",
      "When processing assembly {ASSEMBLY}, strip off leading namespace {PREFIX}:\n" +
      "  e.g. --dropns ASSEMBLY=PREFIX",
      v => {
        var parts = v.Split ('=', 2);
        if (parts.Length != 2) { Console.Error.WriteLine (...); return; }
        var assembly = parts [0];
        var prefixes = parts [1].Split (','); // if > 1 prefix wanted? or just use parts [1].Trim ();
        droppedAssemblies.Add (assembly);
        // somehow deal with your per-assembly namespace prefixes, stored in `prefixes`.
    } },

Related: options which take ','-separated values are usually annoying for users (i.e. me).