[mms] Fix parsing a base MIME-compliant message with no Content-Type information.

We were treating as application/octet-stream, but this is correctly
treated as "text/plain; charset=us-ascii" instead.

Additionally, return us-ascii as a value from getCharset() - that IS the
charset of the part.  Whether to add to Content-Type should be
determined in getType() instead.
This script is not IMAP specific (supports POP also)
[mms] Fix regression in listMailboxes() for POP3 servers when 'flat' option is true.
[mms] Correctly pass the 'no_body' parameter to parts embedded in a message/rfc822 part in Horde_Mime_Part#parseMessage().
[mms] Correctly handle content parameters in a case-insensitive manner.
code style
[mms] Fix accessing subparts when using Horde_Mime_Part#getRawPartText().
[mms] Horde_Mime_Headers has been rewritten.

Main focus is to improve handling of certain specific headers, since
semantics for all headers are not the same. This is needed to better
support things like EAI.

Additionally, the API for Horde_Mime_Headers was much too complex. It
should be a simple API for accessing individual headers. Advanced header
manipulation (i.e. Message-ID generation) should be done in code on top
of this basic code.

See docs/UPGRADING for information on deprecated features.

Verified that all deprecated functions still work as expected, and all
unit tests using the old code still passes.
Fix tests
Horde_Core now uses new Horde_Mime_Header code
Imap_Client now uses new Horde_Mime_Header code
Horde_Itip now uses new Horde_Mime_Header code
IMP now uses new Horde_Mime_Header code
Ingo now uses new Horde_Mime_Header code
whups now uses new Horde_Mime_Header code