.gitmodules: specify submodule.<path>.branch

So --remote can work.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Make ^~~~~ colour dependent on error/warning/note level. Also correct spelling of squigglies.
Refactor extra::term a bit

Move all the colors into a nested mod named color instead of prefixing
with "color_".

Define a new type color::Color, and make this a u16 instead of a u8 (to
allow for easy comparisons against num_colors, which is a u16).

Remove color_supported and replace it with num_colors.

Teach fg() and bg() to "dim" bright colors down to the normal intensity
if num_colors isn't high enough.

Remove unnecessary copies, and fix a bug where a terminfo parse failure
would try to use the wrong error and end up failing.
More 0.7 release notes
Fix a formatting bug in rusti
Fix some warnings in the check-fast tests
Remove the last traces of shapes
rustc: Eliminate extra failing case in metadata::loader::crate_from_metas

Closes #2406
priority_queue: implement simple iterator

Remove PriorityQueue::each and replace it with PriorityQueue::iter,
which ultimately calls into vec::VecIterator via PriorityQueueIterator.
Implement iterator::Iterator for PriorityQueueIterator.  Now you should
be able to do:

  extern mod extra;
  let mut pq = extra::priority_queue::PriorityQueue::new();
  pq.push(5);
  pq.push(6);
  pq.push(3);
  for pq.iter().advance |el| {
      println(fmt!("%d", *el));
  }

just like you iterate over vectors, hashmaps, hashsets etc.  Note that
the iteration order is arbitrary (as before with PriorityQueue::each),
and _not_ the order you get when you pop() repeatedly.

Add an in-file test to guard this.

Reported-by: Daniel Micay <danielmicay@gmail.com>
Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
deque iterator
iterators use deque ordering
A few iterator tests
Moving implementation details to a macro
Add method .set_memory in vec::bytes for &[u8]

Add new trait vec::bytes::MutableByteVector which currently defines one
method .set_memory().
Add methods .move_from() and .copy_from() to vec

Add method .move_from() to MutableVector, which consumes another vector
and moves elements into the receiver.

Add new trait MutableCloneableVector with one method .copy_from(), which
clones elements from another vector into the receiver.
Fix whitespace issues (thanks @jedestep!)
Fix old .each usage
Fix run-pass/match-borrowed_str.rs Fixes #7306
treemap: remove .each in favor of .iter().advance

Both extra::treemap::TreeMap and extra::treemap::TreeSet have
corresponding iterators TreeMapIterator and TreeSetIterator.
Unfortunately, the tests and extra::serialize use the older .each.
Update all the dependent code, and remove .each.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
last bit of whitespace