Redo py3k branching from trunk again

svn path=/sandbox-branches/bhy/py3k/libs/functional/factory/; revision=52115