Handle nested signals
This allows for signals to be raised inside the ART signal handler.
This can occur when the JavaStackTraceHandler attempts to generate
a stack trace and something goes wrong.
It also fixes an issue where the fault manager was not being
correctly shut down inside the signal chaining code. In this
case the signal handler was not restored to the original.
Bug:
17006816
Bug:
17133266
(cherry picked from commit
fabe91e0d558936ac26b98d2b4ee1af08f58831d)
Change-Id: I10730ef52d5d8d34610a5293253b3be6caf4829e