Fix agenda_is_free_in_future and artificially improve the coverage

- When checking if the agenda is free in the future, make sure the recursivity
itself does not conflict with existing meetings.
Add unit-test to test adding a meeting conflicting with future or past but existing meetings