Better patch parser; support svn log --diff