http://stackoverflow.com/questions/3394835/args-and-kwargs
fun(callback, *args, **kwargs)
callback( *args, **kwargs)
arguments ,tupleargs
:
kwargs
:keyword arguments,dict
as positional arguments*args
= list of arguments -**kwargs
= dictionary - whose keys become separate keyword arguments and the values become values of these arguments.