operation: create gb_operation_request()

This allows a "simple" way to make a synchronous request, without having
to handle "raw" operation commands.  This logic is taken from
battery-gb.c and that file has also been converted to use this function
instead.

Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>