Introduce LayerPixel and use it where applicable

LayerPixel represents a "pixel" in layer coordinates, before it is
scaled by the Scene scale and other layer transforms. This is a much
more natural way to store layer sizes and should fix and prevent future
issues with hidpi displays and zoomed views.
Merge pull request #117 from mrobinson/scale

Introduce LayerPixel and use it where applicable