as we are moving towards IO managers, we don't need copy_required_intermediates_for_execution to be run before step execution
this diff moves the the intermediate object copy check inside the intermediate object adaptor.
when loading inputs, the adaptor will check if the source is from upstream_output and source run id is the same as parent id, if so, it will copy the object before loading.
besides, similar to D5474, we switch CP_OBJECT event to context.log the file path as log messages, so then we can clean up ObjectStoreOperation events