Implement longdouble as a wrapper around llvm::APFloat.

This commit introduces a new class `ldc::longdouble` which provides `real_t`
semantics based on the target. It uses `llvm::APFloat` as base implementation.

This fixes issue #259.