fix Issue 10125 Unicode non-BMP decoding to dchar in stdio readln

strings were first decoded to wchars, each wchar was then separately
decoded to dchar, resulting in 2 dchars in the surrogate block instead
of 1 correct dchar.

added unit test to verify readln decoding of non-ASCII characters
combine some statements
Fix @property annotations and incorrect parenthesis
Remove -property switch
Fix issue# 10717.

This makes it so that if you're operating on chars or wchars with
std.ascii functions, you don't have to cast the return values back to
char or wchar, but it still allows you to operate on dchars without
mangling any Unicode values.
Add document for memory safety of std.conv.toImpl for char* to string conversion
Merge pull request #1446 from tom-tan/add-conv-toImpl-comment

Add document for memory safety of toImpl for char* to string conversion.

Merged.
Merge pull request #1436 from jmdavis/10717

Fix issue# 10717.

Merged.
Merge pull request #1296 from M-frankied/readln-nonbmp

fix Issue 10125 Unicode non-BMP decoding to dchar in stdio readln

Merged.
Merge pull request #1394 from 9rnsr/enforceProp

Supplemental change for dmd/pull/2305