fix handling of containers in resolve_registry_includes (fixes #12)

The containers' source_file_line points to the template's definition, which is
then resolved to whichever header included it first. This commit adds a special
case to ensure that the metadata is properly set

It also ensures that orogen_include for a type now lists all includes that this
type requires, in particular in #ro_ptr. #ro_ptr was only adding the
ReadOnlyPointer header, not the header for the template and the header for the
element.

It removes the need for special cases for containers in include_for_type and in
template code. All code generation should now assume that orogen_include is the
authoritative source of information for includes. If it is not, the metadata
should be fixed, not the code.
remove the inclusion of Types.hpp in the CORBA transport

Types.hpp was still used in the Convertions.hpp header for the CORBA
transport. This commit uses a different approach than with opaque handling
(which uses forward declarations) because (1) it is really hard to get "just
right" and (2) the only users of Convertions.hpp are code-generated and only
used for code-generated cpp files. So, drop it completely and simply declare
the functions we need in each Convertions.cpp file.

A short tests demonstrates the expected benefits of reduced compilation times,
reduced memory usage and reduced recompilation (removes unnecessary
dependencies). This has no side effects from the user side as it is only used by
the generated code.

On my test project (control/orogen/auv_control), running

/usr/bin/time -v make -C build/.orogen/typekit/transports/corba

shows a saving of 20s (33%) for the compilation times and of 150M
on the memory usage (20%) with gcc 4.9 on a (very old) Core 2 Duo.

RAW DATA
Before:
  User time (seconds): 56.37
  System time (seconds): 3.46
  Percent of CPU this job got: 98%
  Elapsed (wall clock) time (h:mm:ss or m:ss): 1:01.02
  Maximum resident set size (kbytes): 726596

After:
  User time (seconds): 37.69
  System time (seconds): 2.58
  Percent of CPU this job got: 98%
  Elapsed (wall clock) time (h:mm:ss or m:ss): 0:40.69
  Maximum resident set size (kbytes): 577604
corba: fix handling of conversion methods for array elements

In some cases, the conversion methods for the elements
would not be generated (which is required for the array). The main
cause is having the array defined in the local typekit while the
element is imported from another, already existing, typekit
Merge pull request #16 from orocos-toolchain/remove_inclusion_of_Types_hpp_in_corba_transport

remove the inclusion of Types.hpp in the CORBA transport