Would it be better to simplify this by having a method on `Conditional::GuardInterpreter` and doing as such:

```
if guard_interpreter != :default && command && ! block_given?
  Conditional::GuardInterpreter.construct_block_for(guard_interpreter, self, command, opts)
end
```