1. A method of migrating the running state of an application graphical user interface from one heterogeneous device platform to another heterogeneous device platform, the method comprising: a) instantiating a first platform independent presentation model of an application in response to determining to migrate the application, including updating the running state of the first platform independent presentation model with a current running state of a platform specific presentation operable on a first heterogeneous device platform, wherein the running state of the first platform independent presentation model is received in serialized form over a network; b) generating a second platform specific presentation capable of operation on a second heterogeneous device platform by dynamically customizing the first platform independent presentation model based on graphical user interface capabilities of the second heterogeneous device platform; and c) implementing the current running state from the first heterogeneous device platform in the second platform specific presentation to migrate the application from the first heterogeneous device platform to the second heterogeneous platform.