Remove an unused struct member

AsyncFuncData.folder was entirely unused. Drop it.
Avoid a crash in the pixbuf engine

This is fallout from e4c83bbfdb60fdfe0bae207b1ddae295dc267a23,
which removed a necessary check.
GtkFileChooser: avoid a memory leak

The directory enumeration code was leaking references to
GtkFolder objects.

https://bugzilla.gnome.org/show_bug.cgi?id=705367
Bug 712536 - Themes with gap_(start|end)_file but no actual file crash

Code factorization in commit 34fd123 reintroduced bug fixed in 0d396ab
with non-equivalent factorized tests.
ime: Add builtin handling of dead keys

The IME input method has been both ignoring keypresses of
non-spacing characters (ditching these as non displayable),
and not letting IME do anything about those.

Even though, the sparse documentation on IMM/IME seems to
hint that applications can't pipe non-spacing characters to
the input method manager, and experimentation shown that
those characters are indeed handled differently than how
it'd be expected.

Then, add basic handling of dead keys on the IME input method
itself , as it's not mutually exclusive with regular keymaps
with dead keys.

https://bugzilla.gnome.org/show_bug.cgi?id=704937
Merge branch 'gtk-2-24' of git://git.gnome.org/gtk+ into gtk-2-24