optionally specify encoding for createBlob

`createBlobWithString: inRepository:` assumes `utf-8` encoding, even though the Github v3 Blob API supports `utf-8` and `base64`

This PR adds a method `createBlobWithString: inRepository: withEncoding:` allowing the developer to specify an encoding.

The original method `createBlobWithString: inRepository:` now calls the new method and specifies `utf-8` – this will not break any apps using the original method call, which still works normally.
Could we use an `enum` here so that users can't pass in any old string?