Timetables for example, I’ve found a good layout with good spacing of signals means the trains end up running at a reasonable interval.
Yes, signals seem to be good idea, but in my current game there is a section of tracks (between my hub and my busiest junction in the next town) with five passenger lines (line=2 trains) and 4 cargo trains running on it. It is lovely to see the junction working, it is really busy. But even with four tracks between these towns the trains have to wait and that is causing a mess. I don’t want to build absolutely separated tracks for each line, because real world doesn’t work like this. Not to mention it would need huge amount of space. Timetables are probably hard to implement because of differently passing time but if the trains on the same line kept a gap between them (depending on the number of trains on the line) e.g. by waiting in the station a little longer, it would be really nice. Now I have to manually stop the “faster one”. As you can notice, it somehow works with the road vehicles, try to follow a bus and you may see waiting it at the stop longer than necessary.
So yes, your workaround can work with few trains on the same tracks, but you will never be able to build real-world busy stations (have a look at e.g. Clapham junction in London). And … it is still a workaround.