[FEAT] Diff: Use PatchManager for showDiff

This uses PatchManager for pywikibot.showDiff and also includes now a
header.

It also fixes the missing space in front of a line if it was added or
removed. This makes it consistent with lines where only parts of it were
changed which use difflib.ndiff. And it fixes a crash if both texts are
equal and not empty.

Also a minor change that the state which stores if it ends with the
default color is now represented as a boolean.

Change-Id: Ic59df944b4c64b8536a5178e1aabc0b1adfeab47
Merge "[FEAT] Diff: Use PatchManager for showDiff"