Ported lax_parse() to C, 15% faster

Ported lax_parse() to C and cleaned up prior code. New benchmark results:

```
                 user     system      total        real
Liquid:      0.000000   0.000000  26.770000 ( 26.820869)
Liquid-C:    0.000000   0.000000  22.710000 ( 22.767058)
Ratio: 84.88561094588167%
```

Passes all current Liquid tests. Thoughts?

@camilo 
@dylanahsmith 

Would it be more performant to put those into an array and push them to a Ruby array in batches or all at once, potentially with more efficient MRI methods if those exists for it?

@fbogsany your CPU cache knowledge is required.