If you want to be a lazy bastard, you should look into autotilers.
You can make a tileset like this (except less crudely ;P):

And then never have to look at it again because you just place blocks in the map and have the game figure all the tiling pishposh out itself but without randomization (e.g. flipping tiles).

This is especially helpful with the gm room editor which can just drive you crazy.
This may look like an intimidating task at first but if you break it down, its really simple:

You just need a way to check the tiles and a 2 dimensional array should do that trick just fine.
This can make all the difference to your sanity on bigger levels.
Also I'm not really sure if the light system adds something to this game.
It just looks way too smooth for all the hard pixels you have imo.