Update profman to support artd use cases.

1. Return 100 instead of 1 for usage error. 1 is already used to
   represent kCompile.
2. Move profman return codes to a separate header file so that artd can
   reference them.
3. Allow running profman with `--reference-profile-file(-fd)` but no
   `--profile-file(-fd)`. In this case, profman returns either
   `kSkipCompilationSmallDelta`, `kSkipCompilationEmptyProfiles`, or
   errors. It is essentially a profile checker that checks whether the
   reference profile is usable or not.
4. Add a new return code kCopyAndUpdateNoUpdate for the case where
   profman is run with `--copy-and-update-profile-key` and the copy
   succeeds but nothing has been updated.
5. Use positive values for `--copy-and-update-profile-key` errors
   instead of negative values because the exit code range is 0~255.

- Change #1 is safe because there is no one checking the exit code
  against 1 for usage error. (If there were, the check would be wrong
  anyway.)
- Change #4 and #5 are safe because only installd calls profman with
  `--copy-and-update-profile-key`, and installd doesn't check the exit
  code.

Bug: 229268202
Test: m test-art-host-gtest-art_profman_tests
Change-Id: I8e82c14955519244852166bc7753df4a2bd102ef
Merged-In: I8e82c14955519244852166bc7753df4a2bd102ef
(cherry picked from commit e3d589c26d6f97c4031986132afd4eb1ef00fe4c)
9 files changed