Extend the events interface (both C and lua) to be able to download a http or https file. Use wget or curl for now. Do https certificate validation.
Limit the number of parallel downloads somehow.
To upload designs, you'll need to enable LFS and have admin enable hashed storage. More information