Added ETransliterator wrapper object.

Exposes a C api to the transliterator service separately from
the ECollator API.
EBookQuery: Added transliteration queries.

Transliterated queries come in the regular IS, CONTAINS, BEGINS_WITH and
ENDS_WITH variations. They will transliterate the query input and the
fields which they are testing all into Latin script, so that queries
are script insensitive as much as possible.
EBookBackendSexp: Support new transliterated query types.
EBookBackendSqliteDB: Handle new transliterated queries.

For now transliterated normalized strings are not stored in the summary,
just fallback on EBookBackendSexp for these queries.
test-client-custom-summary.c: Added tests for transliteration queries.

Added new vcard 'custom-12.vcf' with chinese words in the full name as well.
EBookBackendSqliteDB: Support transliterated queries.

Currently only supported for string types (not for multivalue strings,
in which case we still use the EBookBackendSexp fallback).
Bumping version to 3.11.91 for code drop.
EBookBackendSqliteDB: Support transliterated queries for multi-value fields

Bumped DB revision to version 8, data migration routine works, at least tested
migrations from version 7.
CursorExample: Added a transliterated search option to the example contact browser.
Added missing copyright attributions.

All of the files effected by this commit have been modified by me
over the last year, just comming back to assign copyright for the
modifications I made.
EBookClientCursor: Enhancing API documentation.

Added a link to EBookClientCursor to include the cursor-example.c
sources directly in the cursor documentation.
test-client-custom-summary.c: Added test for transliterated queries

The new test tests that transliterated queries work on the multi valued
fields, specifically we are testing it with E_CONTACT_EMAIL and a
contact containing chinese text.
CursorExample: Touching up comments in example program.
test-client-cursor-operations.c: Added tests for using transliterated queries

Since the cursor requires that all fields in use be summarized in the
SQLite summary columns, this test also ensures that transliterated queries
are summarized (and don't fall back on EBookBackendSexp).
libebook: General documentation improvements

Added documentation for EBookClientView signals, added main description
sections to EBookClient & EBookClient, removed the documentation page
for e-book-types and moved the remaining declarations to EBook (and
properly marked those as deprecated).
configure: revert glib dependency to 2.34

This reverts the glib part of commit 4c3991. That commit increased the
compile time dependency to glib 2.38 while still only checking for
2.34 at compile time, leading to compile errors in GNOME 3.8 as built
by jhbuild:

/work/gnome/install/include/glib-2.0/glib/gversionmacros.h:140:7: warning: "GLIB_VERSION_2_38" is not defined [-Wundef]
/work/gnome/install/include/glib-2.0/glib/gversionmacros.h:176:2: error: #error "GLIB_VERSION_MAX_ALLOWED must be >= GLIB_VERSION_MIN_REQUIRED"

It is uncertain whether the new glib is really needed. The commit
message only mentioned GTK+, not glib:

  commit 4c39917dbf3c82fa6fa816d655d5889f4e17c8c0
  Author: Tristan Van Berkom <tristan.van.berkom@gmail.com>
  Date:   Mon Aug 19 20:21:06 2013 +0200

    Bump required GTK+ version to 3.10

    The GTK+ requirement is a soft dependancy, bumping it for the
    purpose of building the cursor example program which uses the
    new template features from GTK+
EBookBackendSqliteDB: Fixed upgrade_contacts() for cases with missing vcards.

This patch avoids critical warnings to be fired when opening an old summary
mode SQLite whilst upgrading/migrating an addressbook from EDS <= 3.6.
EBookBackendSqliteDB: Various bug fixes related to upgrades

  o Call introspect_summary() earlier, before ALTER TABLE and
    adding columns of auxilliary data based on fields which
    are in the summary.

  o Fixed ALTER TABLE ADD COLUMN value_translit to actually
    run the statement (seems I had that in place but just missed
    executing the statement).

  o Fetch the system locale if no locale is previously set in
    an existing DB (i.e. upgraded), fixes a case where we access
    a missing ECollator
Fixed build with regards to GTK+ dependency.

Now we use separate flags to build the cursor example
program, those flags can use a more recent version
of GTK+ than the version required for the prompter
module.
Bug 709198 - Add regression test for contacts database migrations

The migration tests come with a few components:

  o tests/book-migration/vcards/*.vcf:
    The vcards which the test case expects to find in the migrated
    databases.

  o tests/book-migration/db/[various versions]/[File backend files]:
    Various sandboxes created from the vcards, each one created
    with a different stable version of EDS

  o tests/book-migration/test-migration.c:
    The actual test, this automatically loops over the available
    test directories and runs the migration suite for each version

  o tests/book-migration/setup-migration-test.c:
    A simple program used to inject the test contacts into EDS,
    this program can be used to generate the test sandbox from
    EDS version 3.0 onward.

  o The makefile also contains a 'setup-migration' target which
    can be used to generate a new repository automatically in
    the tests/book-migration/db/ directory with the current version,
    this can only be used to generate the sandbox from 3.10 and
    above.