Move DexLoadReporter out of LoadedApk

The DexLoadReporter was part of LoadedApk in order to lazily initialize
it when the first class loader of the app was created. However there's
no real association between the two and doing the initialization in
LoadedApk buys us nothing.

Extract the reporter in its own class and set it to BaseDexClassLoader
during bindApplication stage.

Test: boot, and check that loaded dex files are reported

Bug: 32871170
Bug: 26719109
Change-Id: I9a0e734ae4c16d5d0979aa6d0061fbc9b6e144f6
3 files changed