Change name from string to basestring
diff --git a/Misc/NEWS b/Misc/NEWS
index 2c7646d..c3224da 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,10 +12,10 @@
   deprecations, use -Walways::PendingDeprecationWarning::
   as a command line option or warnings.filterwarnings() in code.
 
-- A new type object, 'string', is added.  This is a common base type
+- A new type object, 'basestring', is added.  This is a common base type
   for 'str' and 'unicode', and can be used instead of
   types.StringTypes, e.g. to test whether something is "a string":
-  isinstance(x, string) is True for Unicode and 8-bit strings.  This
+  isinstance(x, basestring) is True for Unicode and 8-bit strings.  This
   is an abstract base class and cannot be instantiated directly.
 
 - Deprecated features of xrange objects have been removed as
diff --git a/Objects/stringobject.c b/Objects/stringobject.c
index 27b3af4..89e414a 100644
--- a/Objects/stringobject.c
+++ b/Objects/stringobject.c
@@ -2859,17 +2859,17 @@
 basestring_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
 {
 	PyErr_SetString(PyExc_TypeError,
-			"The string type cannot be instantiated");
+			"The basestring type cannot be instantiated");
 	return NULL;
 }
 
 static char basestring_doc[] =
-"Type string cannot be instantiated; it is the base for str and unicode.";
+"Type basestring cannot be instantiated; it is the base for str and unicode.";
 
 PyTypeObject PyBaseString_Type = {
 	PyObject_HEAD_INIT(&PyType_Type)
 	0,
-	"string",
+	"basestring",
 	0,
 	0,
  	0,			 		/* tp_dealloc */
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index 311176e..fba1b49 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -1890,6 +1890,7 @@
 	SETBUILTIN("NotImplemented",	Py_NotImplemented);
 	SETBUILTIN("False",		Py_False);
 	SETBUILTIN("True",		Py_True);
+	SETBUILTIN("basestring",	&PyBaseString_Type);
 	SETBUILTIN("bool",		&PyBool_Type);
 	SETBUILTIN("classmethod",	&PyClassMethod_Type);
 #ifndef WITHOUT_COMPLEX
@@ -1905,7 +1906,6 @@
 	SETBUILTIN("object",		&PyBaseObject_Type);
 	SETBUILTIN("staticmethod",	&PyStaticMethod_Type);
 	SETBUILTIN("str",		&PyString_Type);
-	SETBUILTIN("string",		&PyBaseString_Type);
 	SETBUILTIN("super",		&PySuper_Type);
 	SETBUILTIN("tuple",		&PyTuple_Type);
 	SETBUILTIN("type",		&PyType_Type);