iterator: simplify the `take` implementation
add Extendable to the prelude
iterator: rename `Counter::new` to `count`

to match the convention used by `range`, since `iterator::count` is
already namespaced enough and won't be ambiguous
remove the Times trait in favour of `range`

The `times` method is cute, but I don't think it's worth having just to
save a few characters now and then.

It's not possible to break from `times` and it results in the
restrictions coming from closures. Using `for _ in range(0, n)` from the
start is simpler, rather than switching to it after hitting either of
these issues.
remove `extra::iter`

This module provided adaptors for the old internal iterator protocol,
but they proved to be quite unreadable and are not generic enough to
handle borrowed pointers well.

Since Rust no longer defines an internal iteration protocol, I don't
think there's going to be any reuse via these adaptors.