allow return statements in summary functions
In particular, allow a return statement at the very end
of a summary function. In principle, it would be possible
to support return statements anywhere inside a summary function,
but then care would have to be taken that any write that might
be skipped because of the return statement is turned into a may-write.
Support for return statements is enable by setting the new
return_root field of PetScan. This allows PetScan to easily
check that the return statement does indeed appear as the final
statement in return_root.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>