core: moved definition of KERNEL_PID_NULL

kernel_pid_t is defined in kernel_types.h, thus it makes sense to move
the macro for an invalid kernel pid there, too.
net: fix kernel_pid_t checks

KERNEL_PID_NULL is a negative number. If kernel_pid_t variables are
initialized to this value, one have to check for lt/gte 0.
core: renamed KERNEL_PID_NULL to KERNEL_PID_UNDEF

As @authmillenon pointed out the "null" in the old name is somewhat
misleading, since the actual value is -1.
WIP: initialize kernel_pid_t correctly