Multilingual capabilities shouldn't be a part of the core. The vast majority of people out there blog in a single language. However, that's not to say that internationalisation shouldn't improve. There have been great strides made in this in recent months - for those of you that are complaining about untranslated strings, with very few exceptions, that's not because WordPress doesn't allow the translation, it's because your translation is incomplete. In this case, you need to bug the translator for your language, or even better, write one yourself.
As the author of Gengo, I could certainly do with a couple more hooks to make things a little easier, but if you compare what we have now, to what we had even 6 months ago, you'd be amazed. WordPress 2.1 includes support for language specific php files, which will allow for a great deal of customisation in the future - we just have to write the code first!
There are many multilingual solutions out there - Gengo and Polyglot are just two. Check them out and request specific features from the plugin developers, then they'll tell you what hooks they need. Three features I wanted to develop have resulted (in combination with calls from other plugin authors) in 3 new hooks to WordPress. With a big enough call for it, changes happen. http://jamietalbot.com/wp-hacks/forum/ is where you can request features in Gengo.
@Webtortuga - Gengo already allows you to do everything you asked for, apart from modifying the .po and .mo files, which is a cool idea and which I might implement if I can figure out an elegant way...
@LostInNetwork - I've already explained to you how to have flags instead of language names - there are a couple of people already doing this using CSS and no modifications to Gengo - search the forum.
Again, neither Gengo nor any other multilingual solution should be in the core and I doubt you'll be able to convince the core developers otherwise. My main request would be for all core functions that return a long string of text to offer a filter on the data (not the string) just before they return it. That would make my life and many others, I suspect, a lot easier.