ShizukuShellBackend
ShellBackend backed by Shizuku's newProcess binder. Runs commands as the shell UID — broader than the host app but narrower than root.
Activation is the user's responsibility: install the Shizuku app, activate it via wireless debugging (Android 11+) or ADB, grant the permission. The backend reports isAvailable() == false until both the binder is reachable and the host has permission. See docs/SHIZUKU.md.
Implementation note (Shizuku v13): Shizuku.newProcess(...) is package- private in v13. We reflectively access it because the alternative (a full AIDL UserService pattern) is substantially more code for the same effective behaviour. Migrating to a proper UserService is tracked for a follow-up release; reflection is the documented pragmatic path used by other Shizuku consumers in the v13 era.