Intermediate Code Generation

# begin modeling icg development