Guide: strings

I decided to change it up a little today and hack out the beginning of the String guide. Strings are different enough in Rust that I think they deserve a specific guide, especially for those who are used to managed languages.

I decided to start with Strings because they get asked about a lot in IRC, and also based on discussions like this one on reddit: http://www.reddit.com/r/rust/comments/2ac390/generic_string_literals/

I blatantly stole bits from our other documentation on Strings. It's a little sparse at current, but I wanted to start somewhere.

I am not exactly sure what should go in "Best Practices," and would like the feedback from the team on this. Specifically due to comments like this one: http://www.reddit.com/r/rust/comments/2ac390/generic_string_literals/citmxb5
I mentioned before that a `&str` could actually have been created from something that isn't a `&str` or a `String`, e.g. `str::from_utf8()` creates it from `&[u8]`. At the time I said I wasn't sure if it was worth mentioning.

Well, this still bugs me. But I think we can still avoid complicating it merely by changing the word "either" to "such as" (and replacing the colon with a comma). This reads

> This means that they're a 'view' into an already-allocated string, such as a `&'static str` or a `String`.