The miniaturization of PCs in the form of Pocket PCs, Tablet PCs, and other mobile devices has provided new ways for users to interact with computers. This has led to a need to deploy and re-deploy many existing desktop applications into mobile users' hands. The deployment, however, is often fraught[...]