why do I have to move my apps manually to the SD card to free up space? If the internal memory is so precious why doesn't Android move the apps to the SD card automatically.  I just don't get the logic of searching through the All Apps list one by one to get a couple of apps that are only installed on the internal memory and then move them to the SD card.

In my opinion is a rather lazy memory management that relies on user intervention to free up space for important OS operations.
I can only speculate, as this is something that can really only be answered by an Android engineer, but off the top of my head I can think of a few reasons they might have decided on this:


It's less confusing for end users, since I certainly wouldn't expect apps to magically show up on my SD card after I install them (especially for users coming from versions of Android prior to 2.2, when this feature didn't exist yet).
It allows the user to manage their storage however they see fit, which can be relevant in some cases since you can't access SD apps when your external storage is unmounted. Maybe I don't want some apps on my SD card because I always want to access them, but Android has no way of inferring this, really. Otherwise you might unexpectedly be unable to use an app you wanted because you didn't know it was on the external storage.
Many apps can't be installed to the SD card, so how do you handle a situation where you want to install an app that must be on internal storage but it won't fit? Do you arbitrarily bump another app onto the SD card instead? What if that's not what the user wants (like above)? It could get a little sticky.
Some apps, confusingly, allow you to move them to your external storage despite the fact that it breaks certain features. Pandora, notably, could be moved to external storage even though it breaks the widget (I don't know if it still allows this). How do you handle that situation? Do you forcibly move it anyway, possibly breaking the user's widget?