Continue going through the language reference, bringing it up-to-date.
In particular, document the new comprehensions and remove mentions of long integers.
Fix a bunch of related things in the lib ref.
diff --git a/Doc/library/constants.rst b/Doc/library/constants.rst
index c36b2fa..634656a 100644
--- a/Doc/library/constants.rst
+++ b/Doc/library/constants.rst
@@ -5,6 +5,11 @@
 A small number of constants live in the built-in namespace.  They are:
 
 
+.. note::
+
+   :data:`None`, :data:`False`, :data:`True` and :data:`__debug__` cannot be
+   reassigned, so they can be considered "true" constants.
+
 .. XXX False, True, None are keywords too
 
 .. data:: False
@@ -37,3 +42,10 @@
    slicing syntax for user-defined container data types, as in ::
 
       val = container[1:5, 7:10, ...]
+
+
+.. data:: __debug__
+
+   A boolean value that is :data:`True` if Python was not started with the
+   ``-O`` command line option.  Its value is used indirectly by the
+   :keyword:`assert` statement, but it can also be used directly in code.