Implemented tests for increment and decrement operators
Added tests for prefix increment/decrement. Also some for postfix
Fixed tests to run with PS
Added tests for increment/decrement with other datatype
Work on the new increment/decrement operations
New approach to set values from ExecutionVisitor

I noticed that in several operations ('+=', '++', ...) the expression
to get and set the values are evaluated twice (for getting and for setting).

This is of course wrong. Therefore I started to implement the SettableExpression
class family that allow simple getting and setting of the corresponding values
and that assure that expressions aren't evaluated more than once.

This commit is the first step of refactoring the existing functionality,
the "only evaluate once" functionality will be added later.
Refactor: Use SettableVariableExpression
Refactor: Renamed files to reflect class name
Refactor: Use SettableIndexExpression
Refactor: Actually make use of the new class family
SettableIndexExpression evaluates expressions only once
SettableMemberExpression evaluates expressions only once
SettableVariableExpression cleanup
Added early checks for supported expressions
Added some unpacking that got lost in refactoring
More tests for arrays written to pipeline
Changed tests to kill Pashs workaround
More tests concerning arrays
Fix null reference exception when parameters not passed to script.

A null reference exception would be thrown if a PowerShell script file
containing a param script block, with one or more parameters, was run
and no parameters were passed in the command line.

   PASH> MyScript.ps1

MyScript.ps1 file:

    param ($a)
    ...
Moved evaluation of enumerable results to statement level (instead of ScriptBlock)