Install a PyGI override

This makes the API more Pythonic, and thus more enjoyable to use in
Python.

We could obviously add overrides for other languages, if needed.
Allow installing the overrides for other Python versions

This makes it possible to install the overrides with Python 3, for
example:

  $ ./configure
  $ PYTHON=/usr/bin/python3 ./configure

The first line would install the overrides for the default Python
version (which is usually Python 2), while users (or distro packagers)
could install them for Python 3 with the second command.
Only do the introspection/overrides if requested

This respects the --enable-introspection parameter to the configure
script.
ci: Adapt the build configuration

Dependencies for the library have changed...
Enable compatibility with older GLib versions

Travis CI runs on Ubuntu 12.04, which still has GLib 2.32.

I'd be fine with requiring GLib 2.38 and saying we only support recent
versions moving forward (we still have libcangjie 1.X for older
versions), but not at the cost of our CI.

We can revisit when Travis CI upgrades their systems:
    https://github.com/travis-ci/travis-ci/issues/2046
tests: Initialize the type system for old GLib's

Recent (>= 2.36) versions of GLib do that automatically.

But Travis CI runs on Ubuntu 14.04, which has GLib 2.32, so we need to
explicitly initialize the type system in that case.
Salvage the INSTALL.md file from master

Turns out there's very few changes needed to adapt it to this branch, so
maybe I shouldn't have removed it in the first place. :)
Salvage the README.md file from master

It mostly still applies, except the example... so I've just removed it
for now.
Add a basic cangie.h header

Nothing here yet, it's coming...
Prevent including directly the internal headers

Allowing the inclusion of only the top-level cangjie.h header simplifies
the API and the guarantees we give on it.
Fix finding of the overrides install dir

The way we searched for it meant that it would hardcode the installation
prefix to the one from Python, not to what was specified as a configure
argument.

Turns out that we can make things much simpler, and they just work as
expected.
Remove some useless comments

I got that from the GObject reference documentation, copy-pasting their
examples. :P
Fix indentation
Remove unneeded method

Seems we don't need to implement this method if all we do is called the
parent class's one, that happens anyway.
Implement our enumerations with GObject

Oh the boilerplate horror...

Let's keep in mind the goodness of GObject-Introspection to cheers
ourselves up!
Use the proper quotes for inclusions
Implement the main context with GObject

Here is a big API break: the structure is now called CangjieContext
instead of the previous Cangjie.
Add tests for the new CangjieContext

I'm just taking the tests we had in the previous libcangjie here.

Obviously, most of them depend on not yetr re-implemented functionality,
so I'm just stubbing the out for now, to not forget about them when the
time comes.
Add a PyGI override for the CangjieContext

Just like the CangjieChar, this merely makes the API nicer to use, at
least when it comes to accessing/setting the properties.