[TODO]

* Factor code to add message to folder (refile.c, rcvstore.c,
  scansbr.c (for inc) into folder_addmsg function
* Write different function to read configuration files, instead
  of using m_getfld.c
* convert calls from sprintf/vsprintf to snprintf/vsnprintf
* convert calls from getcpy to strdup
* modularize access to context/profile list.
* add command printm to print messages
* add -attach command to mhmail
* finish changing to macros for msgstats and msgflags
* When mhn -store is saving to folder, it should use folder_addmsg.
* Add support for Mail-Followup-To and Mail-Reply-To
* Add support for profile entry "Mailing-Lists"
* Add RFC-2047 encoding support for out-going messages.
* let mhn and mhl accept files on standard in, and output to
  standard out, when filtering files.
*) Add switch -more to `show' to call moreproc.
*) Add new command "show" at WhatNow? prompt.
*) Add switch descriptions to -help output.
*) Decode headers in messages included when replying or
   forwarding.

[POSSIBILITIES]

MAN PAGES
---------
* Update mh-tailor man page.
* generate mh-chart man page from other man pages
* update default mode in man pages with sed

SEQUENCES
---------
* change so you can have more than 26 sequences
* maybe add option gracefully handle empty sequences (-force).

ENVIRONMENT/PROFILE
-------------------
* Maybe add profile entry "Pager" to change the default pager?
* Should nmh check for EDITOR or PAGER environment variable?

POP
---
* Clean up uip/spop.c.
* Need to decide if want to support APOP, RPOP, KPOP, MPOP.

OPTIONS
-------
* change switches to accept two dashes (--help)
* can we move option checking to its own function?  Currently each
  command is doing that itself.

FLIST
-----
* add -format option so you can specify the look of the output
  of flist.
* add Flist-Exclude profile component

FOLDER
------
* add Folder-Order profile component (same as flist)
* add Folder-Exclude profile component

FORMATS
-------
* add escape %(sequence{foobar}) to detect arbitrary sequences.

FORW
----
* make -nodashmunging the default (change to nobitstuffing or norfc934)

INC
---
* Add ability to do filtering (call filterproc) when incorporating mail
* Change inc to use folder_addmsg().

MHBUILD
-------
* add ability to specify Content-Transfer-Encoding in composition
  drafts.
* add support for Content-Disposition header (rfc1806).
* remove the code for caching from mhbuild.

MHL
---
* remove naming hack in mhlsbr.c for adios and done.
* add ability to filter parts of the message by calling
  an external filtering program.
* fix internal pager for mhl?

MHMAIL
------
* add -attach option (send could use this).

MHN
---
* add way so user can tell mhn to use internal method for
  handling type, such as multipart/mixed.
* add way so user can tell mhn to use a certain `proc' such
  as moreproc, for certain content types.
* add support for Content-Disposition header (rfc1806).
* merge the two places in which mhn reads display strings.
* move code to get storeproc (name="filename") into separate
  function.

MSH
---
* change conditional includes in msh.c to use termios.h
* Add -version to mshcmd.c for each command.
* Change msh to use mbox style files, instead of mmdf.  Add options -mbox,
  -mmdf to choose.

PICK
----
* split regex code out into library.
* replace regex code with Henry Spencer's regex library.

POST
----
* make -msgid the default
* factor msgid code into own function

PROMPTER
--------
* maybe add ability to use prompter just for headers, and
  then use primary editor for editing message.

RCVSTORE
--------
* Change rcvstore so that it can store into multiple folders.
* Add folder locking.

REPL
----
* See if we can combine the code for reply and forw.

SEND
----
* Maybe add `-server' and `-client' to documentation.
* Add ability for returned messages from "send -push"
  to be in MIME format.
* make -msgid the default.

SLOCAL
-----
* Change slocal to use .slocalrc file, instead of .maildelivery?
* Add ability to use regular expressions in header matching.
* Add support for Berkeley db.
* Clean up output from -debug option.
* Add -debuglevel to control the amount of debug info that is output.
* Add -debuglog to specify file to save debugging output.
* Add -logfile (or -audit) to specify where to record info about successful
  deliveries.

VMH
---
* Fix vmh (or remove it).  vmh seems to be using internal
  knowledge of curses.

MTA INTERFACE
-------------
* Fix locking code.  Add lockfile command.
* Think about support for DSN (Delivery Status Notification)
* Test nmh with qmail.  Add qmail's maildir format.
* Relax restrictions on what can be done with headers in send/post.
* figure out why smail.c and client.c need their own copies of
  getcpy, copyip, etc... (funny linking problem)

GENERAL
-------
* see if the various versions of copyfile and copyf can be
  merged.
* change time functions to use POSIX functions by default.
* Add MH-6.8.4 features into nmh (mostly done).
* Maybe should move etcpath to sbr and add to libmh.
* collect winsize, struct termio, etc... together into a ttyinfo
  structure.
* change adios to take exit code argument.
* use wait3 if not waitpid (maybe)
* some of the calls to setjmp/longjmp should be replaced with
  sigsetjmp/siglongjmp.
* When do we need to add -lresolv for SunOS 4.1.x?
* replace use of getcpy with strdup.
* replace use of ftell with fgetpos.
