@mutates only wraps functions of one argument now (which is fine, because pyramid figures out how many arguments to pass)