Refactor width calculation

@ashbb your fix works on OS X. Check out this pull request to make width simpler (all in `@gui`).

One problem with my refactor: when I run `bin/shoes samples/simple-app-dimensions.rb`, the numbers are wrong at first. But if I click "report" they are correct, and they stay correct with resizing.

What do you think?