Explore our 40 favorite small towns in the Blue Ridge Mountains near Asheville NC, with shopping, restaurants and many things to do.