Fix parser and syntax to handle more edge cases (#18)
Reorganize tests