Ensure candidates are returned in the order they were added.
Added some more tests, we should really add more.