It's been a long time, and I'm not a fan of necro-ing a post, but I wanted to share an idea for this.

We had to pass some complex data structures to workstations around the world, quickly and reliably. On the server side, a Kix app "packages" 15 distinct INI files, plus a set of variable data (including arrays). We use ASCII control codes to define the start of a data block (SOM), then split the file name and checksum from the actual file data, which is read until an EOM identifies the end of the file. This repeats until all 15 files are in a data stream. The variables are sent via name-value pairs, and array elements are delimited with other control codes. The entire data stream is ciphered with my Cipher() function. This takes about a second to complete. The entire data stream is downloaded over an https connection, deciphered, and split into the individual files written to disk, and the vars are loaded into memory. That process takes under 2 seconds, compared to the prior method of requesting one file at a time, which took 18-20 seconds.
_________________________
Actually I am a Rocket Scientist! \:D