UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 1176: character maps to <undefined>
## 🐛 Bug

<!-- Important information -->
```UnicodeDecodeError``` when using vocab file generated by ```GPT2Tokenizer```.  Specifically, I created an instance of the ```GPT2Tokenizer``` by calling ```from_pretrained('gpt2')``` then saved the vocab and merges file for that instance to a local directory.  When creating a new ```GPT2Tokenizer``` from the saved files I encounter a ```UnicodeDecodeError``` when reading from the vocab file.

Model I am using (Bert, XLNet....): GPT2 Tokenizer

Language I am using the model on (English, Chinese....): N/A

The problem arise when using:
* [x] the official example scripts: (give details)
* [ ] my own modified scripts: (give details)

The tasks I am working on is:
* [ ] an official GLUE/SQUaD task: (give the name)
* [ ] my own task or dataset: (give details)

## To Reproduce

Steps to reproduce the behavior:

```python
pretrained_tokenizer = GPT2Tokenizer.from_pretrained('gpt2')
vocab_file, merges_file = pretrained_tokenizer.save_vocabulary('.')
new_tokenizer = GPT2Tokenizer(vocab_file, merges_file) # <- UnicodeDecodeError occurs here
```

## Expected behavior

I expect ```new_tokenizer``` to initialize a tokenizer with the same behavior as ```pretrained_tokenizer```.

## Environment

* OS: Windows 10
* Python version: 3.6.8
* PyTorch version: 1.1.0
* PyTorch Transformers version (or branch): 1.1.0

## Additional context

seems likely to be a bug during encoding in ```save_vocabulary```
Looking at [these lines](https://github.com/huggingface/pytorch-transformers/blob/07681b6b5859b630077b742b2f06d440869f17e3/pytorch_transformers/tokenization_gpt2.py#L108-L115), the issue seems to be the file is encoded in utf-8 but read using a different encoder.

Changing line 112 to `self.encoder = json.load(open(vocab_file, 'r', encoding='utf-8'))` should fix this issue.<|||||>Thanks this is fixed on master now with #1074<|||||>Is there a test for which encoder should be used?<|||||>Encountered same error and had the same doubt. Used 'iso-8859-1' as it suits me almost anytime. Worked just fine. @ChebonRunner 