TrafficLight manager is called on each tick

I know we have a TrafficLight object but this can be more efficient. Also, I think we dont have enough traffic lights. Or maybe we can add more states and handle both directions.