Interactive Dungeon (just google it) is free and while it doesn't do everything, it is free, easy, and you can move the PCs around the map as they go through it if you choose. It is the best one I have found, and I use it for almost every dungeon/castle/interior thing (including caves) that I need.