add a delegate based command handler