ok, you read the binary of a file your wanting to compress. Then, you look for areas that have 4 or more of the same character all next to each other, so lets say you load it in as binary, and you see the following:
abcddddddddefghhhhijklmnnnnnnopqrstuvwxyzzzzzz
Well, using rle, you would make it:
abc8~defg4~hijklm6~nopqrstuvwxy6~z
It reduced the size from 47 characters to 34.
So, now, save the file as a .BLZ or something, lol. Then, to make the file usable again... go thro, and reexpand all the stuff you compressed.
Thats for the compression part, as for packing files and making a bunch of files into one... just take each individual files biary, and put it all into one file. The depacker will just rebreak it apart into many files.