Use Mono.Cecil instead of external tools, add automatic reference corrections.

Use Mono.Cecil so that there is no dependency on framework tools or Windows SDK tools to perform signing tasks.
Added automatic reference fixing of all files (including string-name signed ones) so that internal assembly references are corrected to point to newly signed assemblies.