Use some typed units in compositor and windowing.

This is a first step to convert a small subset of Servo code to use type-checked unit conversions (#2226).  It depends on mozilla-servo/rust-geom#35.

Specifically, it adds types for the three different "pixel" units used in the compositor, and uses the type system to check that the proper conversions are used before passing values of one type to a function expecting a different type.  See the comments in geometry.rs for details.

Functions like `to_untyped` are used when passing values to code that has not yet been updated to use typed units.  Eventually most or all of these calls will be removed as more code is converted.