Introduce some scaffolding for an attrs-based BaseSchedulerModel
Alongside swh.model.model, this allows us to define data models for the objects the scheduler is working with, and to serialize/deserialize these objects transparently at the RPC layer.
Test Plan
no specific tox tests added; these will come when actual models will happen in further commits
Migrated from D3270 (view on Phabricator)