Change over to a message passing approach for callbacks in glfw-rs.

Addresses glfw-rs issue #23 and a servo crash at shutdown.
Change some of the WindowEvent members to structs to name their fields.
Revert inadvertant change to window.rs
Add polling for window events (i.e., callbacks) to the window example
Remove extra unit from enum constructors.
Remove redundant deregistration of callbacks.
Rename private -> extfn.
Merge pull request #29 from larsbergstrom/message-passing

Message passing conversion