Add pypy3 to Travis
Provide a method to write a tree to an archive

Add Repository.write_archive() to write a given tree to an archive. As
there are many customisation options, we only provide a method to write
to an archive which is created by the user.
pypy3 does not have the AttributeError/TypeError difference
Merge remote-tracking branch 'carlos/archive'