Fixed parsing of character classes to stop throwing out nested character classes and just treat open brackets as normal characters
Added some test cases for nested character classes and clarified the comments on the parse method
Merged in master by fixing conflicts in the names of hardcoded test cases