Rust0.11

These PR provides fixes allowing the library to compile and pass tests on rust 0.11 nightly (windows).

1. because it is expected that cargo will now handle versioning of crates the `crate_id` attribute has been deprecated. In the future we need to consider adding cargo support.

2. String indexing was removed from rust [#12710](https://github.com/rust-lang/rust/issues/12710) because string indexing was really byte indexing not character indexing. Also UTF-8 strings don't lend themselves to random access, you have to either iterate over them or build some an index mapping each graphene to an index.
For now I assume this lib is  only aiming only for ASCII compatibility in which case byte indexing is okay. But we may want to think of Unicode support for eastern and middle-eastern users in the future.

all test pass on my machine