Move windowing code out of the compositor

This is mainly just moving code around, in preparation for further changes to
the "windowing" API.
Update CEF port to use glfwapp
Update to latest servo/glfw-rs

Picks up servo/glfw-rs#26.
Update Cargo.lock to match actual glfw-rs rev
Fix headless mode
Revert some CEF changes (try to fix Mac build errors)
Change glfw-app to glfw_app (try to fix Mac linker error)
Make crate name match package name (try to fix Mac build)
Explicitly link glfw_app into libservo
Init GLFW with LOG_ERRORS
auto merge of #3533 : mbrubeck/servo/app, r=mbrubeck

This is mainly just moving code around, in preparation for further changes to
the "windowing" API.

r? @larsbergstrom