these functions need to be unrolled too
Merge ..//RPySOM
promote the stackpointer

this is a good idea because the stack depth is always the same at the
same bytecode position
_previous_frame is not immutable

(clear_previous_frame writes it)
don't store _local_offset

retrieving it from the method is fine
pass along the frame and method to the bytecodes

the JIT cannot track what happens to the method and frame if they are
stored on the interpreter, just pass them along. (code looks nicer too.)
when actually reading the method, promote it

(it's green anyway, so it doesn't cost anything at all)
promote the method on blocks as well
Evaluation._number_of_arguments is immutable
put the Block classes into an array

the computation of the key and the global lookup was reaaaaally
expensive
make reading of signature and constants elidable

this is not a fully transparent annotation, as it means that if the user
changes the method it has no effect on already compiled code. This can
be fixed properly, once the object model is made less funny.
reduce the use of has_global

it always lead to two dict lookups instead of one
optimize global lookups

version the global dict: make the JIT assume that globals are rarely
changed at runtime and make it produce new machine code when they
change.
add some more immutable fields to universe
Merge pull request #1 from cfbolz/master

Optimize low-hanging fruit in the jitted RPython version