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.
I'm not sure this is worth it. If they gave us something that's not in our enum, they're Danger Zone already. We shouldn't protect them from that.