For 2 layer boards, I always put a filled ground plane on both sides, and add plenty of vias to connect them together.
As far as X/Y routing, I do mostly surface mount parts, so generally, I try to route as much as possible on the component layer, and try to keep the traces on the bottom layer short. Here's an image from the board I'm currently working on. It's got a 6502 in a socket, SRAM, and FPGA. It's not finished (power isn't connected for example, and so are a bunch of control signals between 6502 and FPGA), but it shows work in progress. Note that I fully exploit the pin swap capabilities of the FPGA to avoid vias.
Attachment:
route1.PNG [ 61.31 KiB | Viewed 957 times ]
Here's the top + ground pour:
Attachment:
route2.PNG [ 42.52 KiB | Viewed 957 times ]
And the bottom:
Attachment:
route3.PNG [ 25.24 KiB | Viewed 957 times ]
Note that the bottom looks empty now, but the power nets haven't been drawn yet. I do make an effort to keep the traces surrounded by ground as much as possible, avoiding to cut up the ground plane with long traces.