Add a bunch of GIL release/acquire points in tp_print implementations and for
PyObject_Print().

Closes issue #1164.
diff --git a/Objects/boolobject.c b/Objects/boolobject.c
index 40f860b..fd73d28 100644
--- a/Objects/boolobject.c
+++ b/Objects/boolobject.c
@@ -7,7 +7,9 @@
 static int
 bool_print(PyBoolObject *self, FILE *fp, int flags)
 {
+	Py_BEGIN_ALLOW_THREADS
 	fputs(self->ob_ival == 0 ? "False" : "True", fp);
+	Py_END_ALLOW_THREADS
 	return 0;
 }