new extension: fetch -> combine pull and merge/update
pull changes from remote repo.
if changes add new head: merge with new head, commit result.
else: update working dir to new head.
this makes useful command like git 'pull' command.
abort: impossible time zone offset: 4444444
transaction abort!
rollback completed
abort: invalid date: '1\t15.1'
transaction abort!
rollback completed
abort: invalid date: 'foo bar'
transaction abort!
rollback completed
abort: invalid date: ' 1 4444'
transaction abort!
rollback completed
abort: date exceeds 32 bits: 111111111111
transaction abort!
rollback completed
abort: No such file or directory: .../test/bar