Abstract cache seed initialization: `Seed::Build::Caches` into a collection class

The following discussion from !53410 (merged) should be addressed:

  • @mbobin started a discussion:

    I think we could have a collection class that should handle the Seed::Build::Cache initialization and transformation back into job attributes, but this MR is extremely long already

Edited by Laura Montemayor