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).

Thanks everyone, I am currently using my phone. I'll fix this once I get my hand on my laptop.

Is `enum Sex {Male, Female, Intersex}` the right one?