It's initial version of ModuleCache which I integrated with existing caching plumbing - using "platform connect -c ..." or SBPlatform::ConnectRemote that takes local cache directory path.
Each module is cached using the following path - ${local_cache_directory}/${UUID}/${platform_module_path}.
ModuleCache::Options has m_max_size field which is no-op now - I'm planning to put LRU logic in with a subsequent CL.
Please let me know whether such approach looks reasonable to you.
Remove this?