Add and use std_session_send_df_header().

This is a small helper function which sends the SR_DF_HEADER packet that
drivers usually emit in their hw_dev_acquisition_start() API callback.
It simplifies and shortens the hw_dev_acquisition_start() functions
quite a bit.

It also simplifies the input modules which send an SR_DF_HEADER packet, too.

This patch also automatically removes some unneeded malloc/free in some
drivers for the 'packet' and 'header' structs used for SR_DF_HEADER.
Driver struct cleanups.

 - Explicitly list .config_get in all drivers for consistency, and set it
   to NULL if unused (whether or not a driver implements it is optional).

 - List all 'struct sr_dev_driver' entries in the same order in all drivers.

 - Move the check whether .config_set/.config_list exist (i.e., are non-NULL)
   into sanity_check_all_drivers().
Rename session_dev_id to cb_data everywhere.

We use 'cb_data' in all drivers these days, make the few remaining ones
that use 'session_dev_id' consistent.
session.c: Drop left-over 'session: ' prefix.

This is added automatically now.
polabs-poscope-mega1: send required header to session bus; channel enabling work
Merge remote-tracking branch 'upstream/master' into mega1