Forbid partial outbound moves from immutable variables

This RFC proposes that the semantics of immutable variables be refined by forbidding partial outbound moves, so:

1. immutable variables in Rust become more immutable;
2. guaranteed lifetimes for values with move semantics ("movable values") can be achieved (by combining this with explicit `drop` calls).

This makes `NoisyDrop`/`QuietDrop` from #210 unnecessary.

[Rendered View](https://github.com/CloudiDust/rfcs/blob/refine-immutables/active/0000-refine-immutables.md).

`UnsafeSell` should be `UnsafeCell`.