Pass bytes to tempfile.NamedTemporaryFile().write()

This method takes bytes as input; the current code fails in Python 3.

Closes-Bug: #1281372
Change-Id: I070d9e9e07523c124f3168b55048fb9d1b338f69
Python 3: Fix JsonPatch-related issues

In Python 3, the generated JSON patches have a different representation than
those generated with Python 2. For instance, the patch generated in
test_patch_should_replace_missing_core_properties() is:

    '[{"op": "replace", "value": "red", "path": "/color"}]'

in Python 2, but:

    '[{"path": "/color", "value": "red", "op": "replace"}]'

in Python 3. Therefore, the comparison fails, and the test fail. We fix the
tests by comparing JsonPatch objects rather than strings.

Closes-Bug: #1281374
Change-Id: Id435e87664b2d2aa0ba69f2df1c1fad431651963
Python3: define a __next__() method for VerboseIteratorWrapper

In Python 3, __next__() has replaced next(). Also, call the next() function
rather than the next() method.

Closes-Bug: #1281866
Change-Id: I92b44508c9c875f16ad89ef8410d2c38092ab23d
Merge "Python3: define a __next__() method for VerboseIteratorWrapper"
Merge "Python 3: Fix JsonPatch-related issues"