Python 3 support

There's still some test failures (in both Python 2 and 3) which I've outlined in `test-failures.txt`. Basically four things need to be decided:

1. Whether or not to drop Python 2.6 support since ReportLab 3 only supports down to 2.7.
2. Try and figure out what is causing the keepinframe test to fail. This is a long standing bug so not that urgent to fix.
3. Fix the PyPDF2 related failures in Python 3.
4. What to do about a ReportLab 3 font loading bug in Python 3.

More info in `test-failures.txt`. I will also add some comments.
This change isn't what it looks like. I replaced 1 tab with 8 spaces as Python 3 doesn't liked inconsistent whitespace. Why is the GitHub diff showing the tab as only 7 spaces wide?

You can see that the block alignment hasn't change by looking at these links:

https://github.com/zopefoundation/z3c.rml/blob/master/src/z3c/rml/attr.py#L295
https://github.com/kylemacfarlane/z3c.rml/blob/master/src/z3c/rml/attr.py#L295