Thanks for all the feedback. We've made a post-jam version, partially because we can't seem to stop making levels, and partially for the practice. It has a full map editor with custom level loading, a few more levels, and trains that can reverse in blocked junctions to switch track. Also more fire. Here it is: https://github.com/NeptunianAxolotl/LD51/releases/tag/PostJam4
The possibility of giving the player more breathing room at the start of levels came up, but we also really liked having the beat of the music line up with train spawns. This complicated things so we weren't able to find a good solution in time. Not spawning trains unless the first piece is placed (suggested by @patomkin) works really well, so the new version has it.
@triangletriangle and @chao we often have a problem with steep learning curves, or with mechanics that are a bit hard to get used to. I like to see progression in games but it is hard to remember that the whole game is new to someone seeing it for the first time. Level makers also seem to find challenging levels more interesting create. If we had more playtesters it could be worth only bringing some in on the last evening. Anyway, to cement the lesson I've made the first few levels a bit easier and added an extra early level to smooth out the curve.
Trying to make more forgiving placement was an interesting problem. We were aware of the annoyance of suddenly routing a line into the forest but lacked simple solutions. Trains can't be destroyed as that would undermine the challenge of the game. Junctions seem to be the worst offenders, so I have modified junctions to let trains reverse and change track if blocked. It would be interesting to put the modified game in front of people to see if this is a good enough solution.
@nardandas trains being on fire isn't an automatic loss. I've seen a lot of victories with trains on fire in some corner of the map. So I wouldn't want fire to cause a loss directly. However, fire is a clear loss if it blocks a town that still needs resources. So this now causes a loss, and sets the town on fire for good measure.
People kept making levels after the jam was over, just for fun, so I added a full level editor and custom level loader. I was also curious about how to save and load external levels in Love as I hadn't done it before. The result looks a bit too much like Dwarf Fortress for my liking, but it works. levelEdit.png The jam version of the game has a rudimentary level editor that consists of changing a global constant and copying formatted tables out of the console. This led to more levels than I was expecting in the last few hours (even a basic level editor is really useful). I considered making a custom level system at the time (just loading, not editing and saving) to distribute to playtesters, as some were relying on manual builds which was slowing things down. I couldn't find an immediate way to do it though, so dropped it. Now that I have a level loading system it should help with future games.