Updated and made compile in .net 4.0
Renamed files to follow MP2 conventions.
Still needs lots of cleaning up and to check if the async is handled properly.