I think you have a sound plan .. as far as CATS, it is a pretty good program and rides on top of JMRI .. it supports all the major schemes (ABS, CTC, etc ) without too much programming .. Once you get the detection into place, you can start to develop the panel .. virtual signals are supported in JMRI / and CATS ..