#137 added guard clauses

fixes #137

It went like this:

* All projects where previously using the MS recommended ruleset for code analysis. I created a new ScriptCs.ruleset based on that ruleset and added "CA1062: Validate arguments of public methods".

* Running code analysis then told me which methods needed guarding.

* I installed the LiteGuard.Source package. I had to hack it out of packages.config since we are building our packages against csproj/nuspec pairs and it would be added as a dependeny otherwise. NuGet 2.7 adds a new feature (which I implemented) which will allow suppression of the dependency with a new attribute - see https://nuget.codeplex.com/workitem/1956.

* I added the guard clauses!