ok did some testing and also some enhancements
tested some of the USB Function, ie switching between net and storage. did not test serial mode. the mounts for the storage mode needs to be filtered. rootfs should not be available as an option since it can cause file corruptions. also, not all mountable filesystems should be made available as an options, ie only vfat partitions and maybe ext2 and ext3 in some kind of advanced mode set in powerctrl.conf, but cramfs and squashfs mounts should be filtered out.
tested the card applet functionality and it works so now pretty much this applet can replace all the other applets (except for clock, wireless and tasks).
i just remembered that the usb storage mount is quite rudimentary. it only allows you to mount and unmount 1 usb disk. maybe this needs to be enhanced to detect whether there is a usb hub attached and if so, allow more disks to be mounted, ie check for /dev/sd[a-d] instead just /dev/sda. i wrote a applet for qtopia long time ago which did most of that, it also allowed you to mount/unmount zip drives and cdrom/dvd drives. it also had hooks to allows you to run scripts for usb ethernet, bluetooth, keyboard/mouse.
i took the liberty to make a few enhancements:
replaced the icon for the memory display to powerctrl-memory.png
renamed Cards to External Storage
renamed USB Function to USB Client Function
filtered the usb storage mounts to be only vfat partitions
renamed Volumes to Volume Control
added a mute option