refactor, move type mapping to helper
refactor bytecode generation
remove java method class