I hope links I provided long time ago are still valid:
For such 2 layer PCB the most important in my opinion is to have continuous GND at one side:
You can see such designed PCB here:
All vias you see are GND. I used there may be 3 0Rs to jump with VCC over signal lines without making a break in GND. As at each output line I use 47..100 ohm resistors (to limit current pulses taken by IC to change output state and I power practically each IC through ferryte bead in most cases I need not to add 0Rs to cross wires.