Opt-in builtin traits, take 2: default and negative impls.

The high-level idea is to add language features that simultaneously
achieve three goals:

1. move `Send` and `Share` out of the language entirely and into the
   standard library, providing mechanisms for end users to easily
   implement and use similar "marker" traits of their own devising;
2. make "normal" Rust types sendable and sharable by default, without
   the need for explicit opt-in; and,
3. continue to require "unsafe" Rust types (those that manipulate
   unsafe pointers or implement special abstractions) to "opt-in" to
   sendability and sharability with an unsafe declaration.

`_` means "any (other) value/type omitting it's name here".
Rust already uses it in let and match statements in variant ways:

```
let p = box 1;
let _ = p;
let (x, _) = (Some(1), Some(2));
match x {
  Some(_) => { }
  _ => { }
}
```

I think `_` denotes well the notions 1 and 2 from @pnkfelix above, and 
3. `_` is shorter than `..`.
4. `..` was already used in range`x..y` array`[..N]` and slice`[a..b]` syntax, in _other_ significations.