Implement PEP 238 in its (almost) full glory.

This introduces:

- A new operator // that means floor division (the kind of division
  where 1/2 is 0).

- The "future division" statement ("from __future__ import division)
  which changes the meaning of the / operator to implement "true
  division" (where 1/2 is 0.5).

- New overloadable operators __truediv__ and __floordiv__.

- New slots in the PyNumberMethods struct for true and floor division,
  new abstract APIs for them, new opcodes, and so on.

I emphasize that without the future division statement, the semantics
of / will remain unchanged until Python 3.0.

Not yet implemented are warnings (default off) when / is used with int
or long arguments.

This has been on display since 7/31 as SF patch #443474.

Flames to /dev/null.
diff --git a/Lib/__future__.py b/Lib/__future__.py
index 65416ae..4cba7ed 100644
--- a/Lib/__future__.py
+++ b/Lib/__future__.py
@@ -68,3 +68,4 @@
 
 nested_scopes = _Feature((2, 1, 0, "beta", 1), (2, 2, 0, "alpha", 0))
 generators = _Feature((2, 2, 0, "alpha", 1), (2, 3, 0, "final", 0))
+division = _Feature((2, 2, 0, "alpha", 2), (3, 0, 0, "alpha", 0))