Ensure outputs are always flushed immediately.

We re-open stdout without buffering (there are other solutions, but this
is a one-liner; see [1]).  Then flush calls in the code are not necessary.

[1] http://stackoverflow.com/questions/107705/python-output-buffering
GitExporter: fix username for lightweight tags

The username for lightweight tags (i.e., non-annotated tags) was previously
blindly set to None, which forces Mercurial to resort to "user@host".
Instead, get the username from the Mercurial configuration.  To support this,
we read the Mercurial configuration in GitExporter.__init__, and add
util.user_config().
Merge pull request #58 from PaulPrice/issues/58

Tagging does not use regular user name
Merge pull request #69 from PaulPrice/flushing

Clone fails