Add Skipped and Pending test results

I added Result property to TestResult objects and kept the Passed
boolean property. The Result can have four values: Failed, Skipped,
Pending, Passed, ordered from the most important to the least important.

Both Pending and Skipped can be forced by setting -Pending (-Skip)
parameters on It. The Pending is also used when It's ScriptBlock is
empty or contains only comments.

The new types of Results are taken into account when exporting the
result into nUnit report.

The new output is gray, because that is the only usable color on
dark and light background that was not used yet. I will probably add
Light and Dark color sets and check the current background color in
some way. But I don't want to mix this change with the current change.

I also added Strict property to every TestResult and to PesterState
object. Strict parameter is available on Invoke-Pester to force anything other
than Passed to Fail.