concrete virtual machine
-. interpret arithmetic operation and primitive operations
-. handle function invocations properly
-. handle <init> and <clinit> properly
-. ship with an embedded debugger
-. the ability to mock built-in functions and native functions by register predefined handlers, e.g System.out.println