[PCB] Move nodes declaration at function entry

All the XML node pointers have been declared at the beginning of the
function in order to clean-up the code and reduce patches modifications
once a reuse is required on different portion of the Loop code.

Signed-off-by: Patrick Bellasi <derkling@gmail.com>
[PCB_DEBUG] Add step jump points

All steps are marked with 0-indexed a jump label with name "step_NNNN".
An set of all such jump labels is also defined as a function local
array. Such array could be conveniently used to:
1. jump straight to the execution of specified 0-indexed step;
2. check if we are executing a specified 0-indexed step, for example to
   stop in debug mode once a certain step has been executed.

Signed-off-by: Patrick Bellasi <derkling@gmail.com>
[PCB_DEBUG] Add StepInto

The StepInto function allows to define where to jump at PCB loop start,
thus allowing to recover the execution from a specified execution step.

Signed-off-by: Patrick Bellasi <derkling@gmail.com>
[PCB_DEBUG] Expose PCB steps to PCB internal methods

The array of PCB steps is defined locally to the Loop method, thus allowing
the compiler to setup reference to labels.
In order to allows PCB internal methods to access these steps references,
a pointer to such array is exported to a PCB protected attribute.

Signed-off-by: Patrick Bellasi <derkling@gmail.com>
[Generator] Using 0 based STEPS counting

The step counter is 0-indexed since this is more suitable to better
support the Jump/Debugging code.

Signed-off-by: Patrick Bellasi <derkling@gmail.com>
[PCB_DEBUG] Add StepOut support

The StepOut function allows to define where to stop in DEBUG mode, thus
allowing to execute up to a specified step and than block waiting for a
continue/repeat debug action.

To this purpose, the Step wrapper template has been extended to get a constant
non-type parameter which is used to identify the step being called and thus
making such an ID available to the PCB internal methods (i.e. CheckDebug) to
verify if the current step has been marked with a breakpoint (i.e. stepout).

Signed-off-by: Patrick Bellasi <derkling@gmail.com>