Update slice path for Ice 3.5.0

Source: http://pkgs.fedoraproject.org/cgit/mumble.git/commit/?id=3f2a2ab18532d66dc9c203f1673e830840cfe775
mumble.pro: add speech-dispatcher 0.8 compatibiltiy.

Based on initial patch by Timo Gurr <timo.gurr@gmail.com>
bonjour: use Qt::AutoConnection for BonjourServiceResolver's QSocketNotifier slot.

Using a QueuedConnection for the slot had the unpleasant
side effect that the QSocketNotifier could have its activated()
slot invoked even though no data was waiting to be read.

In our case, this could cause a deadlock inside Avahi's
libdns_sd compatibility library.

I've settled on using Qt::AutoConnection to be consitent
with the rest of the code base. The Bonjour code should
always be invoked from the main thread, so in this case
Qt::AutoConnection will always mean Qt::DirectConnection.

Why does this happen?  Qt seems to process events before
invoking queued slot invocations.  If the Qt event loop
finds that the file descriptor that our QSocketNotifier
is providing notification for is ready for reading, it
queues up an invocation of the activated() slot for the
next event loop iteration (because we use a QueuedConnection).

As mentioned above, because Qt seems to poll() FDs before
invoking queued-up slots, the end result is that an
invocation of the activated() slot for a given
QSocketNotifier's file descriptor can be queued up in
the very same event loop iteration that a read() is
performed for the exact same file descriptor.

After performing the read(), the queued-up activated()
slot invocation is no longer valid, and can wreak havoc,
which in our case causes a deadlock in the Avahi libdns_sd
code.

The flow below describes the event loop iterations
in more detail:

1st event loop iteration
------------------------
* poll() is invoked; the QSocketNotifier's FD is
  ready for reading.
* An invocation of the activated() slot is queued
  up, to be executed next time we enter the event
  loop (due to Qt::QueuedConnection).

2nd event loop iteration
------------------------
* poll() is invoked; the QSocketNotifier's FD is
  _still_ ready for reading.
* An invocation of the activated() slot is again
  queued up, to be executed in the 3rd iteration.
* The queued-up slot invocation from the 1st iteration
  is invoked. (read() is called.)

3rd event loop iteration
------------------------
* poll is invoked(); the QSocketNotifier's FD has
  nothing to read anymore. Everything was read in
  the activated() slot that was invoked in the
  2nd iteration.
* The queued-up slot invocation from the 2nd iteration
  is invoked. This time, the read() syscall will block,
  because there is nothing to read.
Bump version to 1.2.5
Update opus submodule to opus 1.0.2
add 256px icon layer to mumble icon

* this was suggested by submitted patch 321.
This shouldn’t hurt, only increasing file-size a bit.
Although probably very rarely in use, the patch showed interest/usage of it.
add small version of mumble logo for small icons
tests/Benchmark: Foarmatting and descriptiveness

* Add program/file description
* Useful error on invalid number of arguments
* Code formatting
* Make varnames descriptive
tests-files: Add description to file

* Add descriptions to files in src/tests
* Minor formatting in OverlayTest.cpp
OverlayTest.pro: Add includepaths for celt and speex

* Paths were missing from the include-path. With the celt and speex includepaths added it compiles now.
Benchmark.cpp: Fix: Set version to prevent crash

* Set version to 1.2.3 instead of 1.2.0 to prevent a crash of the benchmark when a user with avatar is already on the server.
As reported on http://wiki.natenom.name/mumble/benutzerhandbuch/murmur/benchmark
Fixed connection setup diagram in mumble protocol documentation

- Showed crypt setup being sent to client before it authenticated.
  Fixed that.
- Also bumped the intended version in the document to 1.2.4
Extend Windows Overlay code and clean it up.

Extend to handle library freeing.
Codeformatting and -cleanup, robustness, and make debugoutput more consistent.

* Indroduce hook for freeing loaded DLLs.
This separates logic between loading and freeing, leading to adjustments to
the recently introduced checks for freed DLLs.
* In HardHook::reset() do a clean and complete reset rather than minimal.
* Memvarinitialisation in HardHook
* Remove logically unused variable bPresenting in d3d9.cpp (always false)
* In d3d10.cpp prefix debugoutput with D3D10 consistently; no more DXGI
which is ambiguous with a d3d11 file that also uses DXGI.
* Consistently use ods instead of fods in the overlay files.
Not in HardHook yet, as that class is used in the Mumble client as well atm
* Fix forwarded return value types (LONG to ULONG)
* TODOs for hook-call-logic in multiple places
* Commenting, formatting and scope / order adjustments
* Introduce variables with constant values (replacing magic/undescriptive constants/numbers)
Code refacs; fix typo and adjust texts

* fix typo
* debug text adjustments
refacs: more elaborative Varnaming; codeformatting
* Commenting, varnaming, fix indent

* commenting and adjusting debug output
* more descriptive varnaming
Refac: Use constant to check return value

* mmap supposedly returns MAP_FAILED on errors, which is supposedly
defined in <sys/mman.h>, which is already being included in this file.
Keep small, simplified mumble icon closer to original
Use simplified Mumble logo for small icons

* Adjusted the script which creates the icon file to use the simplified svg for smaller sizes