bqi: enable keyword arguments to "do" calls

Until now, command 'do' could only parse positional arguments, in a
pseydo-tuple: `do some_method(arg1,arg2,...)`

But I have long lacked the comfort of providing keyword arguments,
so implemented a "functor" that would evaluate full function syntax,
like: `do some_method(arg1,arg2,foo=bar,...)`
bqi: calls to "sudo", using a tailored interactive command

A few minutes ago, I pushed the "sudo" patch to the F3 server.
This is a client implementation, which works much like the "do" cmd,
but also allows to specify a user to run as.

Very useful whenever we try to debug why some method fails for
some users.