for everything I have read on unpack it appears the method of recreating the table as I did above ( with or without the function wrapper ) is the only easy way to guarantee a proper unpack when you have nils within your table.
http://www.wowwiki.com/API_unpack gives a few ideas but nothing that would really allow you to add on easily to the table on the fly