multimail: remove redundant error handling

  $ git log --format=%s --no-walk $SHA1

can never fail unless $SHA1 is an invalid SHA-1 (which is again not
possible from preceding code).  Strip this redundant error handling.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
t/create-test-repo: squelch noise

Suppress output from init and fast-import so that it's easier to compare
expected output with actual output.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
t/create-test-repo: specify a time zone for generated commits

Remove another source of gratuitous variability in the test suite.
t/test-emails: set $TESTREPO from the output of create-test-repo

create-test-repo prints the $GIT_DIR of the repository that it just
created.  Use that output to set $TESTREPO in test-emails.  Aside from
removing the need to specify the name in two places, this avoids
letting the absolute path leak into the output of test-emails, where
it created a gratuitous variability in the output.
Improve test automation

1. Record the expected output of t/test-emails in a file
   t/multimail.expect.

2. Add a script t/compare-emails that verifies that the output of
   t/test-emails still matches the contents of t/multimail.expect.

3. Add a new script, t/run-tests, that runs both of the existing
   tests.

4. Update the documentation in t/README accordingly.

Inspired by patch by: Ramkumar Ramachandra <artagnon@gmail.com>
Merge branch 'test-expect'

Improve test automation by making the output of test-emails more
independent of the environment in which it is running, then adding
script support for testing its output against the expected output.
Merge remote-tracking branch 'ram/redundant-error'

Remove some redundant error handling.