Migrate to rust-0.11

Major changes:
1. ~str to String.
2. ~SomeType to Box<SomeType>.
3. `priv` is removed from the language.
4. Lifetime specifier 'self is removed from the language.
5. `extern mod` changed to `extern crate`.
6. Format specifiers changed to `{}`.
7. `std` lib functions related changes.
8. Other minor syntax changes. (like `#[` to `#![`)

Added:
* A simple unit test case. (build with `rustc --test ...`)