ceph-volume: migrate namedtuple based config and sysInfo to dataclasses
this commit replaces the previous namedtuple definitions for config and sys_info
with dataclasses.
namedtuple is meant to be immutable, but the code modifies its attributes,
so using dataclasses fixes this misuse.
UnloadedConfig is preserved as the default for ceph in Config
to maintain the runtime error behavior when accessing ceph configuration before
it is loaded.