pickling in ascii mode can corrupt metadata

Pickling without explicitly setting mode +'b' causes metadata corruption on some systems (e.g. Windows).
Python pickle docs say binary mode should always be used for protocols higher than 0.