made threading public because UI thread dispatching is necessary for WP8 IAP.