Are you going to use a terrain system ? or is it just flat ?
Bridges and tunnels do add complexity. To have bitmaps represent bridges and tunnels you could perhaps use a 2nd bitmap layer or even one of the channels to represent a second ground layer. (i just noticed that zacharmarz mentioned these considerations) I'm not sure, as there is always a way to make something work, but I'd imagine any commercial game using such sophisticated geometry would utilize a 3d engine. So unless you're an experienced game developer, I'd ditch the bridges and tunnels idea. At least until you've got some other more basic requirements met. Oh, unless those bridges and tunnels are part of the only traversable layer, then it's easier
You can add texture data onto the ground smaller than a tile. That's not a problem. And you can have objects (other than buildings) that are smaller than a tile, because any objects including buildings will be geometry which you have defined. All this talk is speculative though, because the solution options you have are numerous. It would be totally possible to build a bitmap based map system as long as you are clever (and patient) enough to overcome all the challenges. Indeed a lot of game terrains (2d & 3d) are built using heightmap's blendmap's ect which are simply bitmaps. BUT, if you want the power to be able to drop an object onto the ground, anywhere, it makes more sense to me to have in addition to the bitmap (defining ground textures / buildings or whatever) a collection of objects which have location properties : float x, float y, float z or Vector3 position. And run through that collection as well, rendering at their positions, just as you do for your avatar/player character.