rewrote the scaling code so that it stores the:
- screen_width (the width we want displayed in the orientation)
- device_width (actual width of device's max display)
- iw (the window.innerWidth at a meta viewport scale of 1.. so we know what to scale at)
- scale (the calculated scale done, based on the vars above)

it the caches the last used viewport for that orientation, and just calls it. The only device i've had problems with was a gs2 on 4.0.4.. so i added in .onresize() to try to check to see if the current_width is not matching the actual width.. and to then rescale the viewport.