Add the 'bool' type and its values 'False' and 'True', as described in
PEP 285.  Everything described in the PEP is here, and there is even
some documentation.  I had to fix 12 unit tests; all but one of these
were printing Boolean outcomes that changed from 0/1 to False/True.
(The exception is test_unicode.py, which did a type(x) == type(y)
style comparison.  I could've fixed that with a single line using
issubtype(x, type(y)), but instead chose to be explicit about those
places where a bool is expected.

Still to do: perhaps more documentation; change standard library
modules to return False/True from predicates.
diff --git a/Makefile.pre.in b/Makefile.pre.in
index fe6f359..92f2f14 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -249,6 +249,7 @@
 # Objects
 OBJECT_OBJS=	\
 		Objects/abstract.o \
+		Objects/boolobject.o \
 		Objects/bufferobject.o \
 		Objects/cellobject.o \
 		Objects/classobject.o \
@@ -431,6 +432,7 @@
 PYTHON_HEADERS= \
 		Include/Python.h \
 		Include/abstract.h \
+		Include/boolobject.h \
 		Include/bufferobject.h \
 		Include/ceval.h \
 		Include/classobject.h \