fix bug on circular references
use more specific integer typedefs
move instruction argument typedef to common
provide missing runtime error name strings
interpreter listener handles runtime errors