Support new case of deserializing JSON to array of Jobs.

The array deserialization requires relaxing the constraint for
passed generic types from class, new() to only class because
array has no default constructor. It seems that it is the problem
for fastJson. The bug was reported at CodePlex.
Update NetJSON to 1.0.4.1
Format code.
Update NetJSON to 1.0.4.2
Adjust results board and iteration indicator for Jobs case.
Introduce new Number case.

The new case aims at testing big number. Actually it doesn't check
if the deserializer parsed it. It only checkes if big numbers are
ignored.
Fix build script to handle msbuild zoombies.

The msbuild tries to optimize its performance and doesn't close
processes after the build. Therefore the Invoke-MsBuild PowerShell
module cannot determine if the build is finished and also hangs.
This patch adds no node reuse flag in order to instruct msbuild
to close the process after build.
Add Twiter case.

The case contains strange trippled array of doubles (double[][][]).
Change the name of ToString method to Describe in IResultData.

Because the method ToString is implemented by object itself, the
method ToString required by the interface seems to be improper.
Clean up solution and projects settings.

In order to always have Runner set as the startup project, the
solution has to list it as the first project in the solution.
Update the README.md with current benchmarks.
Refactor printing feature.

In order to be more OO the IReport is no longer responsible for
providing its data to the printer, but is directly responsible
for being printed using the passed IPrinter which is called with
IReportInfo parameter implemented by the Report.
Move the number of iterations from IProcedure to ITestSuit.

The patch moves the place where the number of iteration is passed
from IProcedure to ITestSuit. It is done using the abstraction
ITimes which is responsible for executing the IRoutine in the loop.
Support minimum execution time.

The patch introduces the feature called minimum execution time,
which ensures that in each the executed case group all single
result has execution time greater that one second. If the time
is lower the times parameter is increased to reach expected
minimum execution times. It seems that using minimum execution
times leads to better comparision results.
Support execution logging using Serilog.

This patch introduces execution logging which is implemented using
Serilog package. The package is new for me but it seems to be
promising. All Information is logged to the Console and all Debug
data is logged into the file.
Fix the path of the accidently removed resource.
Support parallel test execution.

Executing test can take some time. In order to improve the performance
the parallelis was introduced in the application. It is very
important that the parallel execution doesn't affect the measured
times. In order to achieve this goal only CPU - 1 is used and the
left one should be enough to support the operating system.
Adjust project settings.

The Twitter.json file was not set to copy to output folder. The runner project
used vshost setting. The  This patch fixes it.
Adjust the CPU priority when the application is started.

Because the tests are very CPU exhausting the CPU should be set
at high priority to avoid taking the CPU by other processes.
New benchmarks after increased minimum execution time to at least 1s.