- trim root file system
  - maybe remove verbose usage from busybox
  - could get rid of more libraries (libutil, libcrypt) if not including SSH
    support (... but we may need libcrypt for "password" later anyway)
  - maybe: rewrite kboot in C, then switch to a smaller shell
- better command line handling
  - general file name completion
  - accept [Tab] anywhere
  - consider adding a "bash-like" completion mode
  - don't fail silently on most missing file or bad mount conditions
  - handle completion for foo=bar[Tab]
- access to executables from booted file system
  - add ! shell escape without chroot
- integrate boot loader
  - put kernel and initramfs
  - add loopbacks for "other" targets
  - access loopbacks (lilo -R)
- better configuration file reuse
  - convert existing LILO and GRUB configuration
  - use root=, if present, to complement /etc/fstab, and look for config files
    (partially done - consider also extending this to initial / mount)
  - we assume that the booted root contains all relevant configuration files
- platform support
  - modules (at least warn)
  - what breaks amd64 ?
  - find out what to do with RAID
- more network access methods
  - proxies
  - SMB ?
- documentation
  - better examples
  - explain what is "booted"
  - 3 levels: build, install, user config
- miscellaneous
  - make automatic access of possibly slow devices conditional on yes/no/ask
    variables (possible answers should be: yes, no, always, never)
  - cascaded configuration files
  - one-shot boot choices
  - hooks for splash screens
  - download system fails if resuming file which is complete, but .ok hasn't
    been touched (e.g., when copying a file into the directory)
  - add (improved) equivalent of LILO's "password"
  - make "restricted" a bit less trivial to penetrate
  - find a better place than /sbin for scripts/common-all, e.g., libexec
  - scripts/find-features: IPv4 configuration lacks even basic sanity checks
  - make "__verbose" depend on kernel parameter "quiet"
  - system actions (dhcp, mount, dropbear) are on the chatty side
  - allow for multiple booted system roots
  - consider using FUSE to better integrate HTTP and FTP
  - make tty stay in "raw" mode, so that we don't race with echoes
  - add access over serial port
  - should (optionally) wait for devices to become available (e.g., USB)
- make rebuilding less paranoid
  - only rebuild host gcc if user insists
  - don't rebuild uclibc gcc if uclibc changes
  - don't rebuild uclibc unless its configuration changes
  - don't rebuild busybox unless its configuration changes
  - consider not building host gcc and binutils if the default gcc is 3.4
- clean up building of 3rd party tools
  - avoid patching gcc's spec file
  - avoid strange cross-compilation settings for packages using autoconf
  - in general, make it easier for users to add their own programs
  - allow building with host (g)libc
