Refactored lexing to make it cleaner and allow for multi-arg arguments in quotes