Add remaining Python3 __future__ imports

From previous work, `__future__` imports were added _where it made a difference_. But there are lots of files without the imports, and the trouble with that inconsistency is that it makes it confusing for developers where `print` _may_ work in one place, while only `print()` works in another, etc.

Since the tests all pass on Python 2 and 3, I don't think adding these imports makes any difference to the running code (of course, there's always the possibility that the tests might not exercise some of the differences). The main benefit here is consistency. That being said, like iris, I didn't add imports on the examples.
Normally we document tests with a comment instead of a docstring. Using a comment keeps the name of the test in the test output.