separate ast into the ast package
separate lexer into the lexer package
separate parser into the parser package
separate utilities into the util package
write a simple executable stub
add documentation for asm packages
move ast to the compiler package
fix parser unittest