Use signed comparison for offsets.

This fixes backend/lower_copyb.c.
Fixed some typos.
Fix block align decision

If scheduled-before block is not a cf-predecessor, the function
ultimately computed a NaN and returned false. However, such blocks
should be aligned.

Initially, clang -fsanitize=undefined found the NaN, which is certainly
not expected by original programmer. The DELTA approach still looks
fishy to me.
Use offsetof from the compiler instead of own implementation

Silences clang -fsanitize=undefined.
Not sure why clang complains here.
Avoid signed-shift-left undefined behavior
Avoid more signed-shift-left undefined behavior
Promote uchar explicitly to uint instead of int

Avoids signed left shift overflow, which is undefined behavior.
Fix int overflow

Happened in llvm/2003-05-23-TransparentUnion.c test case
Generate include guards for nodes.h

The file wasn't really meant to be included (it lacks the proper includes to be
useful on its own), the correct file to include is irnode.h.

Anyway the guards don't hurt either...