add struct ClassDefinition
add basic class writer
add path management