* pmail.el (pmail-expunge-counter): New variable
(pmail-set-attribute): Canonicalize the calling sequence to index, attribute, state.
(pmail-show-message, pmail-delete-message, pmail-undelete-previous-message,
pmail-delete-forward, pmail-mark-message): Use the new canonical calling sequence.
(pmail-only-expunge): Use the expunge counter to update the current message index.
(pmail-expunge-callback): Simplify. Just count the expunged messages with a lower
index than the current message index.
* pmaildesc.el (pmail-desc-get-previous): Fix an "off by one" issue.
(pmail-desc-set-attribute): Canonicalize the calling sequence to index, attribute, state.
* pmailout.el (pmail-output-body-to-file): Use the canonical calling sequence.
pmail.el (pmail-only-expunge): Manage pmail-total-messages in the
callback handler; remove the extra show message call.
(pmail-expunge-callback): Rewrite to handle all possible conditions.
pmaildesc.el (pmail-desc-get-previous, pmail-desc-get-match-index):
New functions.
that Rmail/babyl is not affected. This creates a facility/feature
called "pmail" (analagous to "rmail") that can be used independently
from Rmail for testing purposes. The plan is to replace the "rmail"
files eventually and remove "pmail" entirely at that point. In the
interim, interested developers can use either Rmail or Pmail or both
(which is not recommended for the casual User or the faint of heart).