Hey Bill,
welcome to the Tinycore forum ;-)
Maybe ^hats^ will move this thread to another section because you're asking more about "general" programs than about the tinycore base, but I'm trying to give you an answer from my very limited knowledge:
Busybox is a project, which tries to "rebuild" almost every needed command on a linux/unix system, so that you do not need to compile source for example from find-utils, coreutils, util-linux-ng and tons of other source packages. In fact busybox reduces the size of needed commands and functions a lot by condensing them to their base functionality. If you ever looked up the "find" man page - it is overwhelming, but usually most of the stuff you don't need every time. The point in busybox is: Compile one busybox executable (with applets you want for your system, e.g. you don't need crond? Ok skip it, it's extendable and completely modifiable!) and /bin/busybox will serve all your commands like ls, rm, cp, mv, etc. without being so big and ultrafunctional like the real ones.
And of course: you also need a shell on a linux/unix - without you can't do very much ;-). Guess what? Busybox also implements a shell! In busybox it's the ash shell, that's why there's .ashrc in your home directory. From my understanding ash is more "mighty" than the bourne shell (sh) but not as complex as the bourne again shell (bash), so it's called ash. E.g. you have limitations on computing numbers or using arrays (if I'm not mistaken) compared to bash.
All the points I mentioned turn busybox into a must-have for nearly all small embedded systems like routers/dsl modems etc. but also for small distros like tinycore or rescue systems