Redo py3k branching from trunk again

svn path=; revision=52115
preliminary work - 14 BPL .cpp files can be compiled with Python 3 now.

svn path=; revision=52118
More BPL .cpps compiled. A part of Python 3 module initilization support done.

svn path=; revision=52131
Fix a typo which cause many tests crash.

svn path=; revision=52133
Fix more bugs due to typo.

svn path=; revision=52134
add brace around a Python print called in jam script since print become a function in py3k

svn path=; revision=53276
get builtin_converters.cpp compiled under Python 3

svn path=; revision=53278
more fixes to get testcases work, includes module init and other minor fixes

svn path=; revision=53285
more minor fixes to get test cases passed

svn path=; revision=53315
fix for next() -> __next__() name change in py3k

svn path=; revision=53322
implemented a arg_from_python converter that converts py3k unicode to const char*, not an ideal solution, just experimenting.

svn path=; revision=53653
implemented unicode -> const char* lvalue converter for py3k, by using _PyUnicode_AsString() C-API

svn path=; revision=53692
clean other attempts for making unicode -> const char* conversion work, since now we have the right way in previous commit.

svn path=; revision=53693
change encoding annotation iso-latin-1 to latin-1

svn path=; revision=53698
fix __nonzero__ -> __bool__ change

svn path=; revision=53718
change TrueDivide to FloorDivide to make the semantic conform with C/C++ '/' operator

svn path=; revision=53721
fix the static property initialization caused by Python internal change in property_init()

svn path=; revision=53731
fix definition of opaque<Pointer>::type_object

svn path=; revision=53754
fix test dependence of polymorphism2_auto_ptr

svn path=; revision=54643
several fix for the exec test case to make it runs under py3k

svn path=; revision=54644