Fixed a few bugs in wildcard matching.

Wildcards are anchored, unlike regexes. Furthermore, ? in a wildcard
always matches a single character, not at most one character.

Added tests as well.
TEST: Fix Add-Type tests on other locales.
Merge pull request #246 from mrward/fix-add-type-command-tests

TEST: Fix Add-Type tests on other locales.
Merge pull request #238 from ygra/wildcard-anchor

Fixed a few bugs in wildcard matching.
Supporting for loops with less than three arguments.
Reference tests no longer need a flat hierarchy.
Renamed test classes to be consistent. Cleaned up a bit.
Merge pull request #249 from ygra/ref-test-order

Reordered reference tests a bit
Merge pull request #248 from ygra/for-loop

Supporting for loops with less than three arguments.
Fixed support for case-insensitive parameter prefixes
Correct conversion to number, unified arithmetic operators

- Conversion of operands to numeric values as in the PS specification.
- Common method for arithmetic operations
- ReferenceTests for Additions
Tests for subtraction and multiplication, implementations
Support for multiplication, division and remainder
Support for expressions like 1/3=0.333
Index expressions, pipeline element enumeration reworked

The pipeline enumerated all elements when writing to the output stream.
However, that broke support for assigning enumerable objects to a variable,
as it would be enumerated and therefore converted to an object[].
Now, enumeration always takes place when a ScriptBlock ends which seems
to pretty much match PS behavior.
Added add/multiply for arrays and hashtables
Fixed broken tests
Hashtable tests and first fixes
Fixed tests, support for empty arrays
Support for slicing (multiple indexes) and unary arrays