Alternative vote implementation