rework copying of message data

- implement the "tiny message gets inlined" use case, prepare
  for of the upcoming "pass larger data in an external buffer"
  logic

- limit the maximum message size, larger data should be passed
  as a reference to be able to efficiently pass it to the
  receiver

- add quite a few specific limit definitions and thresholds
  to internal.h to allow the tuning of the behavior

- add flags to the KDBUS_MSG_PAYLOAD_VEC structure

- inline small KDBUS_MSG_PAYLOAD_VEC items entirely in the
  passed-on message to avoid any external memory setup

- add _NULL to all enums to detect more easily "uninitialized"
  uses

- rename KDBUS_POLICY_USER to KDBUS_POLICY_ACCESS_USER to
  distinguish access and type enums

- use -EXFULL instead of -EOVERFLOW to signify full buffers

- return -EFAULT for all alignemnt and memory access errors

- simplify kmsg data layout

- use KDBUS_ITEM_NEXT() where possible instead of open-coded
  calculation
API: remove all redundant _CMD_ prefixes from non-ioctl types
unify all needlessly differnt kdbus_item types; they can be the same type