apexd: only run full boot sequence when device is booting

With apexd becoming a lazy aidl, it can be stopped and restarted
multiple times now. With every restart it will be running the whole
"bring up" logic a, which is quite wasteful.

With this CL, it will instead only run necessary initialization logic on
every restart after boot sequence is finished (e.g.
apexd.status="activated" or "ready").

Since I was there, added some documentation on all the functions that
participate in apexd startup.

Test: adb shell cmd -w apexservice getActivePackages
Test: verified in logs that apexd didn't do the whole starting sequence
Test: atest apexservice_test
Bug: 149060287
Change-Id: Iba42d435600727b1cf25141e5d0a59fc6a984e23
3 files changed