Ok, this is my first initial thoughts on design and editing of Hypermail. How
to make Hypermail v2.

We aim at changing the existing source code. This means we don't change
things unless we think we gain functionality or speed. It also means we remain
using C and we do intend to make this portable.

We need a first developer release to enable people to start working. This
release should have all "good" patches applied. We will need a list of
patches, who made what and stuff like that.

We need a bug list gathered. I'd prefer keeping the bugs separated from the
requested features since the bugs are likely to be more important to fix, and
in many cases require less efforts. While A and B

The way I see it, Hypermail was designed in a classic manner where classic
mistakes were made. The most obvious one was that every part in the program
are too closely intertwined with each other.

I think Hypermail could be seen as (at least) five different blocks that
cooperate. Each of these could be written and maintained rather separated from
the other parts, only to allow specified interfaces of how to use each other.
These parts are:

read mail one by one from a selected source and split them up in single
mails