gen: get rid of Types.hpp in OpaqueConvertions* and Opaque*
gen: fix detection of changed source headers
gen: normalize typekit-specific header installation to <typekit.name>/typekit

This will remove the constraint that libraries cannot use Types.hpp
as a header name
remove one more inclusion of Types.hpp
remove hardcoded full path for orogen in the regen target
gen: fix basic numeric type availability in generated m-types headers

We use boost's cstdint typedefs in the generated code, so include
the relevant header.
gen: fix set of included convertion functions in OpaqueConvertions

We need to include the files that provide the convertions for the
type's elements, not the type itself.
gen: fix name of :include option in opaque type handling

Typelib expects :include, not :includes as the set of include
paths
only use toplevel includes to import particular types

We actually do not know which headers can be included and which
are not. The only ones for which we *do* know are the ones that
the user gave us.
gen: properly detect preprocessing errors
gen: fix handling of include chain detection

The current code was broken as it was assuming that the last
toplevel file seen is the current toplevel file. This fails
in this situation

# "some toplevel file"
# "some other toplevel file"
# "return from the other toplevel file"
gen: having no includes for an opaque is a situation that can happen. Tell the user how to fix it
gen: ensure backward compatibility with already existing typekits that have opaques
OpaqueTypes.hpp needs to include all opaques, not only the ones that do not have a user part