Building a desktop application in the age of the cloud