Fixed issue with cleaning deep dir structures

Order matters when recursively deleting directories, for one
project kept getting:
"An error occured in task The directory is not empty."
solved this by recursively deleting bottom up, it might be a bit
slower, but ensures delets are done in correct order.
Fix comment typo
Merge pull request #46 from devlead/patch-1

Fixed issue with cleaning deep dir structures.
MSBuild fix property multiple value & quotation
1.Added support for multiple values as some MSBuild properties require this
2.Addded quatation to property key / values to support values with spaces
3.Adjusted tests to pass with new sematics
This enables properties like ReferencePath to be used whith cake.
Example fluent:

    MSBuild(solution, settings =>
        settings.SetPlatformTarget(PlatformTarget.MSIL)
            .UseToolVersion(MSBuildToolVersion.NET45)
            .WithProperty("ReferencePath", @"c:\temp\assemblies1")
            .WithProperty("ReferencePath", @"c:\temp\assemblies2")
            .WithTarget("Build")
            .SetConfiguration(configuration));

Example all att once:

    MSBuild(solution, settings =>
        settings.SetPlatformTarget(PlatformTarget.MSIL)
            .UseToolVersion(MSBuildToolVersion.NET45)
            .WithProperty("ReferencePath", @"\temp\assemblies1", @"\temp\assemblies2")
            .WithTarget("Build")
            .SetConfiguration(configuration));
Merge pull request #47 from devlead/msbuild-properties

MSBuild fix property multiple value & quotation.
Added logging of process launch parameters. Closes #23.
MSBuild runner: Added support for max CPU count. Closes #50.
Minor code cleanup.
Using explicit version of Fake, since something seem to be wrong with 3.0.0.
Zip: Fixed bug with relative paths.
Added AssemblyInfo creator.
Updated release notes and increased version number.