Fix regression in `contain_exactly`.

The new implementation in 3.0.0 allowed this to pass:

expect([1]).to contain_exactly()

The problem was that the `actual_matches` hash was lazily
initialized in an `expected.each_with_index` loop. This
meant that if `expected` was empty, `actual_matches` would
be made empty as well, causing the match logic to pass.

Fixes #581.