changed ModifierType to bitflags, more rust-like, and added a usage exam...

I've changed the keys to be "const" instead of static, because matching on the key didn't work with that.
Also i've changed the ModifierType enum to bitflags!(), so it can be easily used.
I couldn't figure out how to use the ModifierType with the enum...

Could you please review? Especially gtktest.rs shows that now it needs another "use".

Key can not be matched like this:

```
        match keyval {
            key::Escape => gtk::main_quit(),
```