Add support for equality constraints on associated types
Mostly non-behaviour-changing changes (style, etc.)
Reviewer comments
gedit language spec: add new-style Unicode escapes
auto merge of #19391 : nick29581/rust/assoc-eq, r=nikomatsakis

r? @nikomatsakis 

cc @aturon (I think you were interested in this for some library stuff)

closes #18432
auto merge of #19569 : murphm8/rust/ring_buf_insert, r=Gankro

This is a first pass at insert on RingBuf. I tried to keep it as simple as possible. I'm not sure of the performance implications of doing one copy vs. copying multiple times but moving a smaller amount of memory. I chose to stick with one copy, even if the amount of memory I have to move is larger.

I believe this is part of #18424 

@Gankro mentioned this was missing.
Update vim syntax highlighting for ExactSizeIterator
libc::c_char is not necessarily i8
auto merge of #19664 : tbu-/rust/pr_oibit2_fix, r=Gankro

These probably happened during the merge of the commit that made `Copy` opt-in.

Also, convert the last occurence of `/**` to `///` in `src/libstd/num/strconv.rs`
metadata: Encode attributes for const items

Fix #19773

Together with #19774 (which this is rebased on):

Fix #18156, fix #19722, fix #19185
Start restructuring to support generalized where clauses etc.
Thread a id to `Obligation`
Move the list of region obligations into the fulfillment context.
Introduce predicates but don't use them.
Write code for registering region obligations (but don't use it yet).
Switch to using predicates to drive checking. Correct various tests --
in most cases, just the error message changed, but in some cases we
are reporting new errors that OUGHT to have been reported before but
we're overlooked (mostly involving the `'static` bound on `Send`).
Remove diagnostic errors that were yielding warnings.
Fix the opt-out-copy behavior so that values with dtor etc are considered affine
Implement the astencode rules for predicates. These don't actually get
used by trans, but it's easy to do.
Improve comments and address nits.