In my opinion, devs made a great job by constantly improving train pathfinding algo, fixing bugs in it, and adjusting algo to our needs, but it is extremely hard to satisfy all users with a single algo.
That's why we need to control it.
The only reliable way to affect pathfinding algo is by changing penalty of some blocks (yeah, and it is not possible at this moment), but what does this penalty mean? For the regular player without any knowledge about internal constants inside PF algo and its implementation details these constants just a dumb numbers.
That's why I will not propose to add any penalty items, but I would like to propose to move current PF into a separate mode, like "smart autopilot". Also, new "dumb autopilot" should be added for all other needs. In this new mode train will select any green path that is available, so players should manage all signals using circuit network.
Obviously, it should be possible to switch different autopilots using circuit network, for example when train is passing by a rail signal.
For example:
if you want to create a train depot/waiting bay you should switch train into a "dumb" mode when it enters depot/bay, then manually (this means using rail signals) conduct this train to a free waiting stop, and switch it back into a "smart" mode when it leaves the depot/bay.
This mode will allow players to tweak PF algo without its direct modification, also we will receive a new toy

Any ideas?