This is very much a rewrite. Several changes/cleanups:
- add 'upload_register' function and use it for each of image,
kernel, ramdisk
- use getopt and have Usage
- support the following for specifying kernel/ramdisk
--kernel eki-xxxxxx (or 'none')
--kernel-file /path/to/file
--ramdisk eri-xxxxxx (or 'none')
--ramdisk-file /path/to/file

The primary motivation for this is that the lucid uec tarballs do not have a
ramdisk, and we want this script to just work for those images.

truncate did not appear in core-utils till karmic. This provides
a simple work alike with dd (I think). I've tested the dd work a bit,
creating a small filesystem, putting files in it, resizing up, filling
more, and then resizing down.