Make the parser state expandable and update the elf parser