Move RPython-specific code into its own library module

Let's try to have all theses things in one place, to reduce the differences between PySOM a RPySOM to a minimum.

Signed-off-by: Stefan Marr <git@stefan-marr.de>
Remove dead code

types.MethodType is not used anymore to bind methods

Signed-off-by: Stefan Marr <git@stefan-marr.de>
make the file and string stream type-compatible
Moved StringStream to rlib

Signed-off-by: Stefan Marr <git@stefan-marr.de>
rpythonize the shell

for that, provide own raw_input.
also: crtl-d works now.
Move raw_input to rlib

Signed-off-by: Stefan Marr <git@stefan-marr.de>
convenience for som.sh
continue on newline in the shell

Signed-off-by: Stefan Marr <git@stefan-marr.de>

Conflicts:
	src/som/vm/universe.py
add help flag
add the Byecode/Symbol names at load/translate time
Added a comment to clarify how Symbol/Bytecode names now work

See 81bb9103f110bef0ed7c2ded1ef40b4ed02e8aea

Signed-off-by: Stefan Marr <git@stefan-marr.de>
make the tests runable also using pytest

a pytest is shipped with rpython and typically used there
Added newline at end of file

Signed-off-by: Stefan Marr <git@stefan-marr.de>
push time and random to universe

first, _start_time in the primitve module would be frozen on translate time
and not set when the binary starts.

second, python random is not rpython, we use rrandom
hash() is not rpython
add some type assertions
fix some primitives

Signed-off-by: Stefan Marr <git@stefan-marr.de>
Don't call the BaseException constructor, RPython complains

Signed-off-by: Stefan Marr <git@stefan-marr.de>