Deprecate last remaining module from std.c and move it to druntime
improve memoize with size limit

- previous implementation was dropping complete
  hash-table whenever max size was reached

- new implementation simply replaces old values
  in a fixed size hash-table when hashes collide

- use cuckoo hashing for better space usage and to
  reduce collisions of frequently used values
Issue 13689: byCodeUnit fails to be a random access range.

Add static assert to ensure random accessability.
fix findRoot
Merge pull request #2639 from 9il/findroot

fix Issue 13662: @safe pure nothrow @nogc findRoot
Fix wrong unittests for std.conv.unsigned, signed
Use immutable integer to demonstrate removed qualification
Merge pull request #2662 from ntrel/signed-test

Fix wrong unittests for std.conv.unsigned, signed
Merge pull request #2652 from joakim-noah/move_winsock

Deprecate last remaining module from std.c and move it to druntime
Reference std.range.chain from joiner.
std.format: clean imports

remove new private stuff

add local import

add local import

remove global std.con import
Consistent use of element variable name in .map ddocs.
std.utf: clean imports
std.encoding: clean imports
Add `@nogc` attribute
Merge pull request #2674 from sinkuu/uni

Mark some functions in std.uni as `@nogc`
Merge pull request #2670 from 9il/encode

std.encoding: clean imports
std.traits: clean imports

remove new private stuff
Merge pull request #2669 from 9il/utf

std.utf: clean imports
Remove private staticFilter from AutoImplement and use std.typetuple.Filter instead