Some fixes to string ops to make t/nqp/59-nqpop.t pass

Note that NQP/Parrot, NQP/JVM and NQP/MoarVM all
disagree on how nqp::substr() should behave.
Add some missing parens
Revert "Add some missing parens" - JimmyZ++ voted 'no'

This reverts commit a1f8b1e8ac98f552cd076343bd6646a31c7e448e.
Add boxing that got lost intranslation

Threads aside, this should make test pass again.
Merge branch 'master' into noapr