Bug: archiver.py: convertToWrapped expects bytes

This fixes #462
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b1f9d43..cbbdd6c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,5 @@
 ## Changes in 0.12:
+- Bug: archiver.py: convertToWrapped expects bytes (#462)
 - Bug: convertToWrapped expects a bytestring (#518)
 - Bug: don't add archived-at header to parsed message (#521)
 - Enh: Be more lenient when parsing List-Id headers (#511)
diff --git a/tools/archiver.py b/tools/archiver.py
index fa7d49a..f0e157e 100755
--- a/tools/archiver.py
+++ b/tools/archiver.py
@@ -187,7 +187,7 @@
             **kwargs
         )
 
-    def __init__(self, generator=None, parse_html=False, ignore_body=None, dump_dir=None, verbose=False):
+    def __init__(self, generator=None, parse_html=False, ignore_body=None, dump_dir=None, verbose=False, skipff=False):
 
         self.html = parse_html
         # Fall back to medium generator if nothing is set.
@@ -196,6 +196,7 @@
         self.verbose = verbose
         self.ignore_body = ignore_body
         self.dump_dir = dump_dir
+        self.skipff = skipff
 
         if parse_html:
             import html2text
@@ -355,7 +356,7 @@
         body = self.msgbody(msg)
         saved_body = None # for format=flowed
         try:
-            if 'content-type' in msg_metadata and msg_metadata['content-type'].find("flowed") != -1:
+            if not self.skipff and 'content-type' in msg_metadata and msg_metadata['content-type'].find("flowed") != -1:
                 saved_body = body # so we can redo it properly later
                 # N.B. the convertToWrapped call usually fails, because body is a generally a string here
                 # However sometimes body is bytes at this point in which case it works
@@ -644,6 +645,10 @@
                             'fail silently.')
     parser.add_argument('--generator', dest='generator',
                        help='Override the generator.')
+    parser.add_argument('--generator', dest='generator',
+                       help='Override the generator.')
+    parser.add_argument('--skipff', dest = 'skipff', action='store_true',
+                       help = 'Skip format=flowed processing (mainly for unit-testing)')
     args = parser.parse_args()
 
     if args.verbose:
diff --git a/tools/import-mbox.py b/tools/import-mbox.py
index 7bc3a4c..f2ea52c 100755
--- a/tools/import-mbox.py
+++ b/tools/import-mbox.py
@@ -123,7 +123,8 @@
 
         archie = archiver.Archiver(generator=args.generator, parse_html=args.html2text,
                                    ignore_body=args.ibody[0] if args.ibody else None,
-                                   verbose=args.verbose)            
+                                   verbose=args.verbose,
+                                   skipff=args.skipff)            
  
         while len(lists) > 0:
             self.printid("%u elements left to slurp" % len(lists))
@@ -380,6 +381,8 @@
                     help = 'Skip Mboxo processing')
 parser.add_argument('--generator', dest='generator',
                    help='Override the generator.')
+parser.add_argument('--skipff', dest = 'skipff', action='store_true',
+                    help = 'Skip format=flowed processing (mainly for unit-testing)')
 
 args = parser.parse_args()