Add "pop" support to S2

This adds a new language keyword: pop. It returns the last item in an
array (like a stack), leaving the array one item shorter.

Usage like:

    var int myitem = pop $myarray;

It can be used anywhere you can use an expression, as you might expect.
Add push function to S2

This adds the push operator to the S2 language, which allows you to push
simple values onto arrays of the same type.

Usage:

    var int[] iarray
    push $iarray, 5

Also works with expressions on the right side, so you can be complicated
there if you really want. This is a statement, so it doesn't return
anything and you can't use it in other statements.
Update push support to allow pushing arrays

This makes the push command allow you to push an array onto an array,
which basically appends the items from the array onto the first array.
Merge pull request #504 from zorkian/s2-poppush

S2 pop/push language extension

For #726