Improving testing data management for "self-test"

Should that be high-level feature implemented in SampleData/Python or low-level feature implemented at MRML level in C++?

I tend to prefer the former option (remove networking from MRML and add it at higher level), as I don’t think network communication could be part of MRML (https, various authentication protocols, etc. would be too complicated to implement; simple anonymous public data download over http would be too limited). We could keep cache management (finding cached files, cleaning up old files, etc) in C++ and add checksum support.