Implemented integer literal type promotion.

Integer literals now automatically get widened to a larger type
if necessary, going from int, over long and decimal to double if
necessary. Previously integer literals were only int.

Also implemented the long type suffix which forces the literal to
be of type long.

This follows the wording of the spec very closely (also visible in
the comments in the source code). Where the specification did not
specify exact behavior (such as when an un-suffixed literal
overflows double), PowerShell v4's behavior was adopted.
Merge pull request #180 from ygra/integer-literals

Implemented integer literal type promotion.