Currently we define an array of static non-constant sender structures
in vss.c with only ->init being initialized at compile time.
At startup the ->init method of each sender must fill out the other
function pointers of the structure. This approach is kind of pointless,
as these pointers are known at compile time and never change.
This patch changes the three senders to define a non-static constant
sender structure instead. The vss maintains an array of pointers to
these structures.
Since the new sender structures are non-static, they need to be
doxified. We use the opportunity to provide an overview of each sender.
The patch also introduces FOR_EACH_SENDER(), a macro which is used
several times to replace the open-coded loops we had before.