OCL: Updates on reporting and timer components on master branch

I've pushed two updates to OCL master: the timer patch from Ruben (renames the
"timeout" port to "timer_N" port ) and a revamp-patch for the reporter.

The first patch makes sure that another timer will not wake up your component
(so no reasons to check the ID anymore)

The second patch is a big improvement on how reporting works.

The major rule is:
- If no data is being produced, nothing is logged.
- No buffering is done, so a logged sample resembles the current state as close
as possible

Then depending on the reporter's period:
If the reporter is running periodically at N Hz:
- It will sample the current data stream at maximum N Hz. Ie, if data is
arriving at < N Hz, it will log less lines (so no 'over-sampling')

If the reporter is running one shot (=non-periodic):
- it will log all data for each new data sample on its data ports.

I also fixed some bugs where a header would not be printed. If the size of an
array is zero it will print ArrayName[0] instead in the header, such that you
know a zero length array is coming (ie bad!).

Feedback welcome,

Peter