Add 'list output files' mode to shiboken

Split typesystem XML handler into itself and a new base class with some
common functionality. Create a new handler that guesses the names of
files that will be generated by shiboken and prints them. Add this as an
option to the shiboken executable.

This allows users to run shiboken to determine the list of generated
files, rather than having to specify them manually (which violates DRY).
This will be especially useful for integrating improved CMake support
(i.e. the ability to shiboken-wrap a library from CMake using only a
single CMake function, given an existing typesystem and list of
headers).

Change-Id: Ie6a0611dac1d2703d9b0af7cc54d10f2b0f794ad
Create 'use file' for Shiboken with CMake helpers

Create a 'use file' containing a CMake function 'sbk_wrap_library',
which leverages the new --list-outputs mode and some CMake magic to
greatly simplify wrapping libraries with Shiboken. This allows the
wrapping logic to be implemented as a single CMake call that handles
creating the rules to generate and build the wrapping code, as well as
some support for dependencies between bindings. It can also generate the
'global' header from a list of headers (e.g. projects that already have
a list of SDK headers to be installed), and in some (very simple) cases
can even create the entire typesystem XML.

Change-Id: Ie21e28a8b57bacb38ee10182086ccbf2f4427cbc