Additional tweaks:

* Able to pass both args and kwargs.
* Pass thorugh some data of the function