Generate strings instead of AST

This change will totally remove the `generate_gl_bindings` macro, in favor of Cargo build scripts.

If you simply use the `gl` library, nothing changes.

If, however, you use `gl_generator`, then instead of:
```rust
generate_gl_bindings! {
 api: "gl",
 profile: "core",
 version: "4.5",
 generator: "global",
 extensions: [
 "GL_EXT_texture_filter_anisotropic",
 ],
}
```

Replace this by:

```rust
include!(concat!(env!("OUT_DIR"), "/gl_bindings.rs"))
```

And create a file named `build.rs`:

```rust
extern crate gl_generator;
extern crate khronos_api;

use std::os;
use std::io::File;

fn main() {
    let dest = Path::new(os::getenv("OUT_DIR").unwrap());

    let mut file = File::create(&dest.join("gl_bindings.rs")).unwrap();

    gl_generator::generate_bindings(gl_generator::GlobalGenerator,
                                                   gl_generator::registry::Ns::Gl,
                                                   khronos_api::GL_XML,
                                                   vec!["GL_EXT_texture_filter_anisotropic".to_string()],
                                                   "4.5", "core",
                                                   &mut file).unwrap();
}
```

You will also need to tweak your `Cargo.toml`:

```toml
[package]
# ...
build = "build.rs"

[build-dependencies.gl_generator]
git = "https://github.com/bjz/gl-rs"

[build-dependencies.gl_common]
git = "https://github.com/bjz/gl-rs"

# remove [dependencies.gl_generator]
```