Allows handlers without arguments, and ignores void returns

It's nice to be able to add `then` handlers that don't care about the incoming value (no arguments), and/or don't affect the ongoing value (void return).