Port forward: [3/3] Install persistence support

New fragment to control install persistence settings.

Author: Tom Marshall

Signed-off-by: igio90 <giovanni.rocca.90@gmail.com>
Overhaul CMDProcessor to fix deadlock and allow redirection

* Make CMDProcessor a utility class.  Methods start*() start an async child
  process and return immediately.  Methods run*() are convenience methods
  that wait for the child and return the results.
* All sh and su commands are run with the -c option.  This frees up child
  stdin for piping data.
Note CMDProcessor.canSU() no longer caches results.  This is consistent
with super user implementations, whose behavior can change dynamically at
runtime based on the user's input and responses to prompts.
PS2: Amend (get|set)SystemProp methods, use internal class instead of
CMDProcessor

Author: Tom Marshall

Signed-off-by: igio90 <giovanni.rocca.90@gmail.com>