Add support details
Use c_style enums instead of raw statics

Type safety ftw!
Update usages of `std::rt::start_on_main_thread` to remove `crate_map` parameter
Use `*mut` instead of `*` for non-const parameters in ffi fns
Change Modifiers to be a record-style struct

This should mitigate potential PEBKACs caused due to accidental derefs
Merge branch 'master' of git://github.com/bjz/glfw-rs into q3