Refactored parser method

* Separate method to get next token
* Rules to reduce nested objects / arrays (and possibly more later)
* Methods to reduce tokens