Sketch implementation of ordered with counts

Questions:

1. What should we do with at_least, at_most and ordered?
2. In receive_spec.rb:325 I've done the calls after the fact. The spec correctly fails and catches the exception but then the RSpec mocks teardown raises the next exception. We could replace this with a manual call to RSpec::Mocks.space.reset_all or possibly a temporary scope. What's best?
3. Is this even a good way to solve the problem, shoving more things in to the order group doesn't feel like a great solution to me?


Also, would it work to remove the `@order_group.register(self)` line from `initialize` and then not need the `- 1` here?  That may not work but if it does it seems simpler.