Backport Implement the standard Charset encoders and decoders.

* US-ASCII
* ISO-8859-1
* UTF-8
* UTF-16 BE/LE/auto

This also fixes #1087: String.getBytes().

Backport:
- Move tests: scala.scalajs.{testsuite => test}.niocharset
- TODO checksizes

(cherry picked from commit 75bb352cb3e44d06981df33b003e414401f73016)

Conflicts:

	ci/checksizes.sh
	library/src/main/scala/scala/scalajs/runtime/RuntimeString.scala