LEGO trains are primarily toys, and the recent ones aren't even using metallic rails.
As such, they're usually considered ill-suited for automation purposes. That doesn't mean it's impossible, but it'll prove challenging. In any case, you'll definitely need some computing, so it's good that it's OK with you.
For trains themselves, sticking to available parts will be an issue. PF trains are supposed to be remote controlled via RC and have no awareness of the track of or anything at all. The problem you'll have here si to make sure that whatever signal you send, the train will receive it. Some your RC emitters need to be very well placed, and the bigger your layout, the more this is going to be a problem. Forget about tunnels. And your number of trains is limited, too.
You'll probably need to use a Mindstorms Kit and an IR Link Sensor; the NXT itself can be programmed directly or easily controlled by a computer.
Since you'll be using Mindstorms, sensing trains shouldn't be too much of a problem, either with available sensors (not sure which one would be best though) or by making your own (a reed sensor on the track usually detects LEGO train magnets if there are 2 or more of them together); but you'll be limited by the number of sensors you can plug on a NXT. You can of course use several, or grab some sensor multiplexers. When using Reed sensors, you'll probably hav enough with touch sensor multiplexers.
So far, you see using only standard material (and admitting HiTechnics or other third-party vendors as such) is already becoming a complex solution - feasible, certainly, but not cheap either. And we haven't touched switches yet - not that it's complicated to motorize, but if using NXT motors, it's going to take some place.
In the past, some people have had some success transforming 9V trains for DCC, but I wouldn't consider 9V trains as available any more, and this solution does also require a lot of work and good understanding of DCC and whatnot. I have none of this, so I won't talk much more about it, except to say that this usually doesn't address the problem of switches either, and that you'll need a lot of non-LEGO stuff to make it all work.
In short, I think you can do a lot of fun automation even with current trains, but if you want a complete solution right from the start, LEGO may not be the best suited for that. On the other hand, the challenge of making it work may be a greater experience for you and your son, so I'd advise trying anyway. You can start with simple things, keeping the most complicated things (switches) for later.
One other thing you can do to simplify is make sure that the layout itself is simple. For instance, you can have a single track with a train going back and forth (mimicking the good old 4,5V system shouldn't be hard with a PF Polarity Switch, and that by itself adds a lot of movement to an existing layout, without actually requiring any automation at all.