Adding support for difflib

Review Request #648 — Created Nov. 28, 2008 and discarded — Latest diff uploaded


Review Board SVN (deprecated)


Removed the dependency on the "diff" command, and replaced with support for Python's difflib module.
This requires a bit of a hack to work around an issue in difflib with handling files that don't end in newlines: (this was fixed in Python 2.6, but the fix doesn't seem to be there in 2.4 or 2.5).

Also added a fix for a minor issue in PerforceClient._depot_to_local() where the local path sometimes has a trailing newline character.
Used by a few people successfully for a couple days on Windows and Linux systems.