> So I'm thinking if we did this as a factory method, that returned either a ExpectationTarget or a BlockExpectationTarget rather than in #initialize, we could skip the conditional checks later on.

Great idea, I'll push a fix for this soon.

> Any reason this couldn't be part of expect syntax definition?

Well, this version of the logic (that has to infer if it's a block expectation or not) really fits better here, as the `@block_expectation` variable is really internal state.  I'm moving in the direction of a factory method.  I don't want it in the syntax file, though; those inline method defs are intended to be short.