1. A computer system comprising: at least one processor; and a memory comprising instructions stored thereon that when executed by the at least one processor cause the at least one processor to perform acts comprising: running synchronous application logic on at least one background thread, the application logic accessing an object on the at least one background thread; and while running the synchronous application logic on the at least one background thread, maintaining a user interface in a responsive state on at least one user interface thread, the user interface accessing the object on the at least one user interface thread.