Start trying to use callstatic where possible.
Avoid double-walking trees in sink context.

Before, we'd walk the tree under the non-void and void branches of
the QAST::Want. This prevents the double-work, cutting a good bit
off the optimize phase.
On JVM, eliminate binder for zero-param code.

This in turn means it'll be elligible for the indy optimization that
relates to such calls.
Don't pass nqp::null to a QAST node!
Fix param snafu in Promise.then
Make paramless block opt on JVM a level 3.

Breaks some spectests. Need better analysis before it can become a
level 2. Doesn't break anything in the setting itself, though, so we
can keep the benefit from better optimizing that.
Merge branch 'opts' into nom
Bump NQP_REVISION.
Private role attributes are now visible in class

Thanks to extensive support by jnthn++.  Unfortunately, getting this to work
for private *native* role attributes, proved to be needing to go deeper into
the rabbit hole.  Which will be for another day.
Only need $/ for the first occurrence of attribute
Fix most of the nasty nqp::get_attr calls

Now that classes can see private role attributes
Implement *Scheduler.cue( :times )
named params are optional by default
Implement (hidden) :SINK attribute on slices

The idea being that te optimizer will add this when it sees a :delete being done
in sink context.
Fix additional dereference, thanks to TimToady++

$ perl6-p -e 'my %h=a=>1,b=>2; say so all %h<a b c>:exists'
False
Put the burden of :SINK on :delete only
fix whatever currying for chain ops

When a WhateverCode gets created from a chain op, it'll be annotated
with its original arguments and when a WhateverCode with a chain op ends
up calling a WhateverCode that also had a chain in it, it will "flatten
out" the arguments of that WhateverCode, creating a proper chain.
fix remaining problems with whatever_curry and chain ops
Merge branch 'chained_whatevercode' into nom

This fixes WhateverCode generation when chain ops are involved.
A few changelog entries for this month