First of all WordPress is a blogging platform, yes we've forked it to do so many things, but that's what it is inherently.

We're in version 2.8.4, by now people using WordPress should have realized that things like this can happen and when they do it's a serious issue. So if you're customizing it to perform all kinds of "thingamajigs" you better be prepared to deal with re-doing those "thingamajigs" when it comes time to upgrade.

WordPress provides you the tools to do whatever. But if you use it in such a way that your entire website/blog has to DREAD an upgrade, well then, you're doing it wrong.