ensure write_manifest passes contents to write_file as unicode strings.

--HG--
extra : rebase_source : 719fb2eb2c3599c57d7a11f5fc55cf9a88d74df7
ignore .git* files
test_sdist: change the latin1 test to match the behavior of write_manifest
Improved comment in the latin1 sdist test.
Added tag 3.6 for changeset e94e768594a1
Bumped to 3.7 in preparation for next release.
Merge changes from Pull Request 50
Backed out changeset: 1ceaffff2d9b (restoring b0a2fcc5275a). Ref #193

--HG--
extra : rebase_source : 5ca0514bbe3ec025094ea8f39921722d0ab3dd05
Clean up docstring
This code path doesn't make sense. If the UnicodeEncodeError occurred above, it will occur here too.
Reindent
Extend docstring for test_write_manifest_skips_non_utf8_filenames
Test should use the same high-level interface for appending filenames as the object itself will use when building the filelist. Ideally, FileList wouldn't expose this attribute at all.
FileList.append already excludes files that are not UTF-8 encodable, so rely on it when building the manifest. Ref #193
Fix failure on non-Windows systems
Reindent
Extract _safe_path
Use compat for Python 3 detection
Move Python 3 code to the body of the function
Also override extend to check paths for safety.