Well , when you put it like that, doesn't sound that good. However the majority price on our board comes from the isolation, due to logistical reasons(mainly availability, and due to its presence in our system on other boards) we go for the iso7240, pricey overkill, but does the job. Your 74HC123 idea sounds very interesting however, I'll have a lookFor the price of one of those you can buy twenty-four ULN2003s each of which will run three solenoids, so it's 72x the price.