There are some 3,000 castles in Scotland, each one different from the next. Here is a guide to some of the best.