libcore: fix overflow/underflow in range_step
Update help text to match behavior
Fix comment to match style of surrounding text
Support https protocol for git submodules for rust

Currently submodules are using the git protocol. Git protocol is blocked
by certain corporate networks which makes it difficult to sync the submodules.

Replacing the git protocol with https in order to sync the submodules.
auto merge of #5800 : vivekgalatage/rust/master, r=bstrie

Currently submodules are using the git protocol. Git protocol is blocked
by certain corporate networks which makes it difficult to sync the submodules.

Replacing the git protocol with https in order to sync the submodules.
auto merge of #5788 : danluu/rust/rusti_clear, r=bstrie

The old help text reads "clear the screen", but :clear seems intended to do something completely different. I'm not sure what the intent is. If it's really supposed to clear the screen, not only does it not clear the screen, it does something completely different.

```
rusti> fn foo() { println("called foo!") }
()
rusti> foo();
called foo!
()
rusti> :clear
rusti> foo();
<anon>:34:0: 34:3 error: unresolved name: `foo`.
<anon>:34 foo();
```

Per the contributor guidelines, here's the reason there's no testcase: it's a comment string.
auto merge of #5769 : gifnksm/rust/range_step, r=bstrie

`uint::range_step` or `int::range_step` causes overflow or underflow as following.
code:
```rust
fn main() {
    for uint::range_step(3, 0, -2) |n| {
        println(fmt!("%u", n));
    }
}
```
output:
```
3
1
18446744073709551615
18446744073709551613
...
```
This commit fixes this behavior as follows.
```
3
1
```
Add #[start] attribute to define a new entry point function
Add a #[start] attribute

This adds a #[start] attribute for functions to
override the lang item and define your own entry
point.