If you compile your own custom kernel you must strip it down very much,.. only include support for what you must have, compile device drivers as modules... or perhaps remove insmod, lsmod and rmmod and compile it into the kernel. The kernel must have ramdisk support and support for initial ramdisk (initrd) After you have compiled a new kernel it is no problem just to overwrite the old one.
add.tgz is just an tarball.. to modify the existing do as follows, assuming you are in your home directory and add.tgz resides there.
mkdir add cd add tar -xvozf ../add.tgz ... modify the file adding/removing/modifying .... cd ~/add/ tar -cvozf ../add.tgz *
You've now got a your own add.tgz filesystem, .. if space is tight you can try uncompressing it, and recompress it with either gzip -9 add.tar or use bzip2 which compresses better (also included in the hal91 core system)