compiler.pri: explicitly target Windows XP when specifying output binary's subsystem.

MSVS 2012 and 2013 default to outputting binaries that require Vista or greater.
compiler.pri: explicitly specify -ARCH:SSE for MSVS 2012 and 2013.

The C++ compiler in these versions os Visual Studio default to
generating SSE2 code, unless this is overridden with /ARCH.
Plugins: add support for the 'path' attribute in plugin auto-update XML.

This new attribute specifies an absolute path on a Mumble services
host that a given plugin is available at:

  <plugin name="borderlands2.dll"
          hash="(...)"
          path="/plugins/<os>/<abi>/borderlands2.dll" />

This path is directly usable with our WebFetch class.

We need this to be able to properly service multiple plugin ABIs
and/or OSes at the same time.

We could have overloaded the meaning of the 'name' attribute, and
have passed the absolute path in there, but the chosen approach
is more explicit about its intentions.

Being explicit about the 'path' attribute also makes it easier to
understand how backwards compatibility is handled: Since Mumble 1.2.5
and prior verisons do not know about the 'path' attribute, they will
keep simply using the 'name' attribute as their pointer to the DLL
file. This means we'll have to keep serving the DLLs for these older
clients at <webroot>/plugins/<name>.

In practice, this means that all plugins that can be requested by
these older clients will need to have a copy that lives at
<webroot>/plugins/<name>. Since these clients only support
(abi=1600, os=Win32) we can ensure on the backend that plugins for
that combo are served at /plugins/<name>.
mumble_plugin.h: change plugin magic values in preparation of the MSVS 2013 switch-over.

Mumble 1.3.0 on Windows will be built with MSVS 2013. That means
that old plugins will no longer load into it (Mumble will crash
if we try), because of C++ ABI differences between MSVS 2010
and MSVS 2013.

To combat this, we switch our plugin magics such that no ABI
mismatches can happen: Old clients will refuse to load new plugins,
and new clients will refuse to load old plugins.

We have a precedent for doing this. See dac82c99 (MSVS 2010 switch-over).
Bump version to 1.3.0
installer: update Product.wxs to refer to the VC120 CRT.

Without this, we'd be bundling the wrong CRT for MSVS 2013.
installer: change InstallerVersion to 405 to be able to merge with MSVS2013 VCRedist.
installer: automatically embed VCRedist 12.0 DLLs when env var MumbleNoMergeModule is set.

This commit updates the old RedistDirVC10 files to point to their new version 12 copies,
now that we build with MSVS2013.

It also implements an easy way to opt-out of using merge modules for the VCRT
redistributable DLLs.

With this change, if the environment variable MumbleNoMergeModule is set,
the installer build will automatically embed the VCRedist DLL files as
regular files into the final .MSI.

To avoid this behavior, one can set MumbleNoEmbedVCRedist=1. So, to build
a Mumble installer with no VCRT merge modules *and* no embedded VCRT DLLs,
one would set *both*

  MumbleNoMergeModules=1
  MumbleNoEmbedVCRedist=1
installer: drop InstallerVersion back to 300. add note about InstallerVersion requirements for VC12 redist to MergeModuleDir setting.

This change effectively reverts commit 0e447428ba8380581297e3e619967a09dda036ed.
Merge remote-tracking branch 'upstream/master'