Parser fixes

I rewrote the parser as a somewhat dumb character-based scanner. This fixes the behaviour for weird quoting situations and also adds support for glob patterns. If this change is too drastic that's fine, I'll fork and publish just the parser as a new package since quoting isn't really that useful to me.

Either way, you might want the test cases I added.