Optimized Async for .Net 4
Simplified 3.5 support (used partial class)