Variadic function objects
Closes #28.
ModuleFunction now accepts a function with an arbitrary signature, only requirement is returning bool, since this is used by the for_each_module to determine the return value.
Edited by Jens Noerby Kristensen