Add GtkSourceEncoding API

The code comes from gedit, in the purpose of making the gedit source
code more reusable.
Add GtkSourceBufferInputStream private class

Taken from the gedit source code, GeditDocumentInputStream.
Unit tests for the buffer input stream