cmListFileBacktrace: Simplify by refactoring excess functionality
Due to the way cmListFileBacktrace
evolved over time, it was left playing three roles:
- Representing a backtrace of the call stack.
- Formatting the call stack to print in messages.
- Providing information about the directory at the bottom of the call stack.
Refactor clients relying on 2 and 3, and remove them. This simplifies the interface of cmListFileBacktrace
, and removes some restrictions from its usage.