Implement candidate lists and is_mayor generically

It's now called is_special