[lld][MachO] Use llvm::Align and remove StringOffset type (#161253)
Use `llvm::Align` instead of directly storing the shift amount for
clarity. Also remove the `DeduplicatedCStringSection::StringOffset` in
favor of simply storing the `uint64_t` offset since `trailingZeros` is
not used outside of `finalizeContents()`. These two changes allow us to
refactor `finalizeContents()`.
No function change intended.
Depends on https://github.com/llvm/llvm-project/pull/161241.