starting work on runtime system