Executable statecharts for the JVM