Bug 1036286 - Make sure libraries loaded by faulty.lib use its own sigaction. r=nfroyd

Android L added a libsigchain library it LD_PRELOADs. That library exposes
a different sigaction than libc's. It's used for ART.

faulty.lib gets its sigaction from libsigchain, but after bug 874708, the
libraries it loads simply use libc's sigaction, assuming it would be the
hooked one. In turn, this means libraries loaded by faulty.lib may
override faulty.lib's handler, which is definitely not the intent.

This essentially restores some of the code that bug 874708 removed.

An alternative fix would be to add support for LD_PRELOAD, but that has more
implications and feels more risky. This could be done, if necessary, as a
followup.
Bug 1043033 - Allow to override on-demand decompression blocklist. r=snorp
Bug 1042982 - Make shared libraries go after static libraries on program linkage command lines. r=gps

Also remove a branch that can never happen.