Accept Issac Morland's suggestion for __replace__ to allow multiple replacements
(suprisingly, this simplifies the signature, improves clarity, and is comparably fast).
Update the docs to reflect a previous change to the function name.
Add an example to the docs showing how to override the default __repr__ method.
diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py
index 04d4d9d..7c5b2dc 100644
--- a/Lib/test/test_collections.py
+++ b/Lib/test/test_collections.py
@@ -40,7 +40,7 @@
         self.assert_('__dict__' not in dir(p))                              # verify instance has no dict
         self.assert_('__weakref__' not in dir(p))
         self.assertEqual(p.__fields__, ('x', 'y'))                          # test __fields__ attribute
-        self.assertEqual(p.__replace__('x', 1), (1, 22))                    # test __replace__ method
+        self.assertEqual(p.__replace__(x=1), (1, 22))                       # test __replace__ method
         self.assertEqual(p.__asdict__(), dict(x=11, y=22))                  # test __dict__ method
 
         # Verify that __fields__ is read-only