Moved the conditional logic into the imposterizer.

It would be good to refactor all use of the imposterizer into this single
entry point at some stage.
An initial attempt at getting code coverage working using lcov.
Started to get basic invocation actions working again, and left myself
with a failing test for consecutive action sequences.

I have a feeling some of the simpler action classes can be replaced 
with block actions in the future.
A first pass at re-implementing consecutive call actions.

The duplication between LRActionSequence and LRExpectations bothers me,
I expect to refactor this away.
Eliminates the duplication involved in creating actions using the same
fluent interface in more than one place (directly in the main expectations and
in the consecutive action sequence).
Added throwing of exceptions - this demonstrates using blocks to implement
simple LRExpectationActions.
Added composite action support.

The previous refactoring proved very useful as it made implementing this
easy.
Ensure consistent grammar.
This action is so simple we can implement it as a block.
Removing support for this for now. The code is pretty hairy and I'm not
sure its a valid use case.
Better category naming.
A bit of project reorganisation.
Left stray import.
Fixed category, re-enable no ARC flag.
Remove redundant cardinality code.
Get a compiling, but failing state test with a syntax I think I'm happy with.