Rewrote parser, now MUCH simpler and doesn't break. Now finished.