allow lambdas to be passed with argument lists that dont match call
updated specs for passing lambda
cleanup
refactored fix for lambdas