Add sync reporting to platform

A lot of this code lived in the ISO plugin, but is generally useful for
reporting on syncs that involve a manifest/metadata download and then multiple
files. Adding it here keeps us from having to copy/paste between plugins.

Most of the tests for the report were moved from
test_extension_admin_iso_status.py in pulp_rpm.