Add "base" library. Add checked mode tester.

My first pull request, please take a look.

Three things for discussion:

 + The "base" library / name. A place for code that looks like or deals with language built in features, e.g. utilities for Object, the "Optional" type.
 + Where to put the checked mode check. I'm suggesting that it fits under "should be part of the language", hence putting it in base. Another idea was a new library called "testing", but I worry that such a library will accumulate code that does not belong in production code, whereas this check might be needed anywhere.
 + Testing the checked mode check. This is awkward as the test needs to know whether checks are enabled ... it looks like the editor runs the tests with checked mode enabled, so that's what the test expects. Is there any way to control this? How are the tests expected to be run?

Thanks!