Oh, no, Drupal pregenerates the stinking morass for you. ;)
Well, it's not really as bad as that. But the person in this thread who pointed out that Drupal development is the art of compromise was on the money. And the learning curve for Drupal 5 can be rather like scaling a sheer cliff. It all depends on what you're trying to do, though. If you're willing to compromise your goals to fit the scope of things that you can convince Drupal to do right out of the box... it works out of the box!
Get a book or two. The Lullabot.com folks seem to be good teachers. In particular, if you find yourself wanting to write PHP for Drupal, get a copy of Pro Drupal Development and sleep with it under your pillow.
As it happens, my email thing is not public code. But perhaps it could be. I seem to have already identified one potential user! But the stuff I wrote would have to be factored out and turned into a plugin for Organic Groups, or perhaps interfaced with the Actions Module.