[WIP] Make nested braces and brace ranges work

This pull request should resolve editorconfig/editorconfig#81

The main problem is that nested expansion of `*` and other things don't work inside braces.
I split it into two based on the C code and it still seems to fail the same 8 tests.

We may be missing some tests because that code did not look equivalent.