Update to Python 2.3, getting rid of backward compatiblity crud.
diff --git a/Lib/email/Utils.py b/Lib/email/Utils.py
index a409e16..3a4bbc8 100644
--- a/Lib/email/Utils.py
+++ b/Lib/email/Utils.py
@@ -1,17 +1,16 @@
-# Copyright (C) 2001,2002 Python Software Foundation
-# Author: barry@zope.com (Barry Warsaw)
+# Copyright (C) 2001-2004 Python Software Foundation
+# Author: barry@python.org (Barry Warsaw)
 
-"""Miscellaneous utilities.
-"""
+"""Miscellaneous utilities."""
 
-import time
-import socket
-import re
-import random
 import os
+import re
+import time
+import base64
+import random
+import socket
 import warnings
 from cStringIO import StringIO
-from types import ListType
 
 from email._parseaddr import quote
 from email._parseaddr import AddressList as _AddressList
@@ -21,30 +20,7 @@
 from email._parseaddr import parsedate as _parsedate
 from email._parseaddr import parsedate_tz as _parsedate_tz
 
-try:
-    True, False
-except NameError:
-    True = 1
-    False = 0
-
-try:
-    from quopri import decodestring as _qdecode
-except ImportError:
-    # Python 2.1 doesn't have quopri.decodestring()
-    def _qdecode(s):
-        import quopri as _quopri
-
-        if not s:
-            return s
-        infp = StringIO(s)
-        outfp = StringIO()
-        _quopri.decode(infp, outfp)
-        value = outfp.getvalue()
-        if not s.endswith('\n') and value.endswith('\n'):
-            return value[:-1]
-        return value
-
-import base64
+from quopri import decodestring as _qdecode
 
 # Intrapackage imports
 from email.Encoders import _bencode, _qencode
@@ -140,7 +116,7 @@
     # Intra-package import here to avoid circular import problems.
     from email.Header import decode_header
     L = decode_header(s)
-    if not isinstance(L, ListType):
+    if not isinstance(L, list):
         # s wasn't decoded
         return s
 
diff --git a/Lib/email/__init__.py b/Lib/email/__init__.py
index e45dadc..74b9b73 100644
--- a/Lib/email/__init__.py
+++ b/Lib/email/__init__.py
@@ -1,10 +1,9 @@
-# Copyright (C) 2001,2002 Python Software Foundation
-# Author: barry@zope.com (Barry Warsaw)
+# Copyright (C) 2001-2004 Python Software Foundation
+# Author: barry@python.org (Barry Warsaw)
 
-"""A package for parsing, handling, and generating email messages.
-"""
+"""A package for parsing, handling, and generating email messages."""
 
-__version__ = '2.5.5'
+__version__ = '3.0a0'
 
 __all__ = [
     'base64MIME',
@@ -29,12 +28,6 @@
     'message_from_file',
     ]
 
-try:
-    True, False
-except NameError:
-    True = 1
-    False = 0
-
 
 
 # Some convenience routines.  Don't import Parser and Message as side-effects
@@ -51,6 +44,7 @@
         _class = Message
     return Parser(_class, strict=strict).parsestr(s)
 
+
 def message_from_file(fp, _class=None, strict=False):
     """Read a file and parse its contents into a Message object model.
 
@@ -61,12 +55,3 @@
         from email.Message import Message
         _class = Message
     return Parser(_class, strict=strict).parse(fp)
-
-
-
-# Patch encodings.aliases to recognize 'ansi_x3.4_1968' which isn't a standard
-# alias in Python 2.1.3, but is used by the email package test suite.
-from encodings.aliases import aliases # The aliases dictionary
-if not aliases.has_key('ansi_x3.4_1968'):
-    aliases['ansi_x3.4_1968'] = 'ascii'
-del aliases # Not needed any more
diff --git a/Lib/email/_parseaddr.py b/Lib/email/_parseaddr.py
index 5cb75e6..167eb3f 100644
--- a/Lib/email/_parseaddr.py
+++ b/Lib/email/_parseaddr.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2002 Python Software Foundation
+# Copyright (C) 2002-2004 Python Software Foundation
 
 """Email address parsing code.
 
@@ -6,13 +6,6 @@
 """
 
 import time
-from types import TupleType
-
-try:
-    True, False
-except NameError:
-    True = 1
-    False = 0
 
 SPACE = ' '
 EMPTYSTRING = ''
@@ -130,7 +123,7 @@
 def parsedate(data):
     """Convert a time string to a time tuple."""
     t = parsedate_tz(data)
-    if isinstance(t, TupleType):
+    if isinstance(t, tuple):
         return t[:9]
     else:
         return t
diff --git a/Lib/email/base64MIME.py b/Lib/email/base64MIME.py
index a247773..af85949 100644
--- a/Lib/email/base64MIME.py
+++ b/Lib/email/base64MIME.py
@@ -27,13 +27,6 @@
 from binascii import b2a_base64, a2b_base64
 from email.Utils import fix_eols
 
-try:
-    from email._compat22 import _floordiv
-except SyntaxError:
-    # Python 2.1 spells integer division differently
-    from email._compat21 import _floordiv
-
-
 CRLF = '\r\n'
 NL = '\n'
 EMPTYSTRING = ''
@@ -41,12 +34,6 @@
 # See also Charset.py
 MISC_LEN = 7
 
-try:
-    True, False
-except NameError:
-    True = 1
-    False = 0
-
 
 
 # Helpers
@@ -100,7 +87,7 @@
     # length, after the RFC chrome is added in.
     base64ed = []
     max_encoded = maxlinelen - len(charset) - MISC_LEN
-    max_unencoded = _floordiv(max_encoded * 3, 4)
+    max_unencoded = max_encoded * 3 // 4
 
     for i in range(0, len(header), max_unencoded):
         base64ed.append(b2a_base64(header[i:i+max_unencoded]))
@@ -141,7 +128,7 @@
         s = fix_eols(s)
 
     encvec = []
-    max_unencoded = _floordiv(maxlinelen * 3, 4)
+    max_unencoded = maxlinelen * 3 // 4
     for i in range(0, len(s), max_unencoded):
         # BAW: should encode() inherit b2a_base64()'s dubious behavior in
         # adding a newline to the encoded string?
diff --git a/Lib/email/quopriMIME.py b/Lib/email/quopriMIME.py
index 67369b5..2802bc2 100644
--- a/Lib/email/quopriMIME.py
+++ b/Lib/email/quopriMIME.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2001,2002 Python Software Foundation
+# Copyright (C) 2001-2004 Python Software Foundation
 # Author: che@debian.org (Ben Gertzfield)
 
 """Quoted-printable content transfer encoding per RFCs 2045-2047.
@@ -38,12 +38,6 @@
 hqre = re.compile(r'[^-a-zA-Z0-9!*+/ ]')
 bqre = re.compile(r'[^ !-<>-~\t]')
 
-try:
-    True, False
-except NameError:
-    True = 1
-    False = 0
-
 
 
 # Helpers