Sorry I haven't been able to get back to you guys, but I've been pretty busy with finals and tennis.
I only recently got some time to work on the dungeon generation and was able to get decently randomized rooms, but I'm wondering what the best way to connect the rooms is, because my last attempt resulted in some bad looking dungeons.
the way I do it (as described in the above linked article) is to create a bsp tree. Once the tree reaches the desired depth (== room size) you just traverse back up the tree and connect neighbouring nodes.
The actual connecting can be very simple: Find centre of node A, decide which direction node B is (N, E, S, W) and create a straight line to the room until you reach an empty tile in node B.
You can obviously do this a lot more complex if desired by using a pathfinding algorithm. However, I'd try the easiest first and see how you go