try to track void context in the optimizer

does not work yet, it seems to consider all string literals in void context.
No idea why :(
be a bit less wrong about void context detection

still does not work at all :(
fix logic error in void context detection

still has quite a fe false positives
track declaration bits in the QAST
use %!worrying mechanism for string constants in void context
give string literal QAST nodes a Match object
detect Int and Num literals in void context

Does not trigger yet, probably because they have no .node info.
Also replace the constant QAST node with a null op
give numeric constant QAST nodes a .node

now Int and Num literals warn in void context
warn when inlining constant expressions in void context
steal match widening from rakudo-debugger

now "23 + 4" in sink context reports the whole expression, not just the operator
Merge remote-tracking branch 'origin/optimizer-void-context' into nom