Projects consuming and distributing Cecil in environments they don't control (i.e. an addin inside VS or XS) risk having the environment load an incompatible version of Cecil from another addin or location (depending on the process/domain configuration and the probing paths set up for the host). To shield from this issue, XS has forked Cecil, changed its assembly name and signing key, and now it has to maintain that fork in sync with upstream. Others with similar requirements (in particular, the Xamarin Visual Studio extension team now) will need to do the same, with the added maintainability burden. This commit provides a conditional import that allows products that distribute Cecil to tweak settings that will affect its build, without having to fork the project unnecessarily. The Mono.Cecil.overrides file is a plain MSBuild file with additional properties that can exist anywhere upwards from the current Cecil repo clone path, making it very flexible even if the project is submoduled. It's imported before the C# targets so that changes to the assembly name, signing key, etc. are properly overwritten before the C# targets process them. This involved moving the existing .settings files down in all .csproj files. Fixes #216
This reverts commit 27dadbb.