Regarding cranks, beside BB shell width, you may have issues with chainring size clearance. Road cranks come with a 39T or so middle ring, MTB cranks are 32T so you may have problems with the middle ring rubbing against the chainstay. You could always use a longer BB spindle than recommended, but that (c)would mess up your chainline. Or you could use a smaller middle ring. Now, if you are planning on using a triple road crankset on a MTB frame, I am almost certain you'll have problems with the small ring (likely to be in the 30T range) clearing the frame.
As for cassette and derailleurs, the cassette would work just fine. The rear derailleur would work just fine, some people actually use them. Front deraillleur should fit, not sure if perhaps the clamp size could be an issue. Shifters, road bars do have a different diameter, so if you want to use STI shifter/brake levers you will need to run a road drop bar (which you would be doing anyway if you are running those levers). But, keep in mind that road levers have a different throw, so if you run a road bar/lever combo you will have to run adapters to use v-brakes (you can always use cantis or road discs) Mountainbike shifters are compatible with rear road derailleurs (provided you are not using a 10 spd road system)
Now, what I am not sure is why use road gears on a mountainbike. Specifically, road cranks, other than the big ring, you won't have a signifficant gain. If you want to use road components, I would go with a road frame, a touring or ciclocross frame will likely work better for you than a MTB frame. I'd look at Nashbar's touring frame (you can get it for 200 bucks with the fork) and use strong cross wheels. Me 2 pennies.