Bump NQP_REVISION.
Optimize the optimizer somewhat.

Shaves about a third off its execution time.
Cheapen dynamic compilation somewhat.
Things with nested blocks are not inlinable.

There are ways to have nested blocks without a declaration being made;
anonymous subs and thunks are just two examples. This fixes an lvalue
subs regression.
Re-order to restore for 1..1000 {} optimization.

More inlining possibilities led to 1..1000 style things being turned
into code no longer recognized as a loop over a range, so we lost the
optimization. Move it to before any inlining attempts are made.
timotimo++ for spotting this optimization regression.
Forgot to visit children after range opt.
Make sure we precompile core modules with extension
Temp fix supporting loading .pm6 files as source
Almost complete refactor CompUnit and CURL::File

A CompUnit object now has always the source file as its "path", even if the
source file cannot be found.

CURL::File has been utterly simplified, as it turned to be impossible to
smartmatch finding files.  So now it only looks for the existence of the
file, and returns that.  Thanks to Scalar[0] indexing, this is compatible
with the API.
Bump NQP to get short-circuit fix
Make sure we spot a compiled file if source absent
missing deps: Test.pir -> Test.pm.pir, etc.
Disallow @*INC entries to be list of CUR's

As discussed with FROGGS a few weeks ago already.  BTW, this appears to have a
great effect on startup time, judging from CPU usage in spectest.
Don't do expensive setup for sort if not needed