[CDF-25991] 😆 Download hierarchy (#2109)

# Description

This is part of the new data plugin.

Note upload of hierarchy does not make sense as the `cdf data upload
<path>` will just upload whatever assets, events, file metadata and
timeseries it finds.

<img width="1147" height="428" alt="image"
src="https://github.com/user-attachments/assets/b6c8494a-7a5f-4fed-8b3e-64bfd0abce7e"
/>

<img width="1077" height="593" alt="image"
src="https://github.com/user-attachments/assets/db86c738-d100-441d-809e-d944b45fcff9"
/>


**Note** I needed to extend the `StorageIO` interface with selector in
the `data_to_json_chunk` as I use the selector to select whether to use
the dump method for events, assets, timeseries, of filemetadata in the
`HierarchyIO`.
[Ref](https://github.com/cognitedata/toolkit/pull/2109/files#diff-2ab3a7cd764ca1cf9f9f669767652ac2faa76240c3cef2ea60c9004626cbdabeR120)

## Changelog

- [x] Patch
- [ ] Skip

## cdf

### Added

- [alpha] New command `cdf data download hierarchy` that enable you to
download an entire asset-hierarchy.

### Fixed

- [alpha] The command `cdf data purge dataset` no longer fails if the
alpha flag `infield` is activated and the APM is missing.

## templates

No changes.
