I'd say it would just use a TCP stream, read an index file, compare it with a local index, then get whatever's new. It could also be packed, ie brl.audio.module and when received locally its unpacked. Authough I'm probably really really wrong. Thats the way I'd do it anyway. Open a stream, get an index, download packed modules, unpack locally, update local index.
Or, if you wanted previous versions of modules you could pack them with some sort of filename convention, ie, brl.audio.1.04.module, you could easily implement that in a program.
Or, if you wanted previous versions of modules you could pack them with some sort of filename convention, ie, brl.audio.1.04.module, you could easily implement that in a program.