I think it would be a massive project, not something that I would do unless I had loads of spare time and a bit more motivation. I'm already aware of a few major changes in the clients that would make it much harder than adding a special map and npcs, but I've also not spent enough time looking into it to say those are the only issues. Then again, there could be an easier method that I've overlooked.
I have a friend who's been modding the GTA San Andreas PC engine to load his own content and scripts, he's been working on it for over a year now but it's definitely an interesting project.

