Silverlight: problems with async calls, and how to avoid ’em