TASKS LIST FOR PIRC COMPLETION

This is an overview of tasks in order to complete PIRC.
By "complete", or "completion", it is meant to be able
to use PIRC as a PIR compiler, without needing the current
PIR compiler, IMCC.

Fairly randomly sorted, the tasks are:

[DONE] 1.  Emit the actual bytecodes into a PackFile/codesegment.

[DONE] 2.a Create a PMC constant for strings, numbers and
             subroutines.
[DONE] 2.b Create a PMC constant for keys

[TODO] 3.  Complete PASM output, so it can actually be parsed and run.

[DONE] 4.  Handle :multi flag properly.

[TODO] 5.  Handle nested macro expansions.

[TODO] 6.  Fix all memory leaks. this should be trivial, given PIR's built-in
           allocated-memory-pointer-registering infrastructure. In some
           places this is not used yet, and in others, it's not necessary
           to use it (but in those mem_sys_free() must be called explicitly).

[DONE] 7.  Figure out how :named argument passing works in bytecode.

[DONE] 8.  Finish the parrot calling conventions ops in the back-end
           (var.args must be fixed).

[DONE] 9.a Handle :slurpy

[DONE] 9.b Handle :flat

[DONE] 10. Handle indexed assignments in bytecode.

More tasks will be added as I think of them. --kjs
