[WIP] Prevent Python 3 port regressions

**WARNING** This PR is developed on top of #827, the only change worth reviewing is 3f7f1574

Lot of people have made an effort to make Scrapy codebase Python3 compatible, but new changes needs manual review and sometimes new features of bugfixes are merged without considering Python3 compatibility.

This PR aims to minimize the regressions and to document what areas are pending to be migrated by collecting the list of yet to be migrated testcases at [tests/py3-ignores.txt](https://github.com/dangra/scrapy/blob/py3-tests/tests/py3-ignores.txt).

New test files are required to be python3 compatible or explicitly added to the ignore list.

/cc @kmike @felixonmars