Improved the TeX parser
Improved the TeX parser

* Braces that are preceded by an odd number of backslashes are no
  longer used for sectioning in parseTexString since they are
  escaped (printable) braces.
* '\o' is put in TeX text mode since using it in math mode results
  in a (La)TeX warning.
* Handling of escaped and un-escaped '_' and '^' is improved. Not
  only is it simplified, but it also fixes errors when a subscript
  or superscript operation takes place after escaped (printable)
  backslashes.
* Handling of escaped backslashes is improved. See comments in the
  code for details.
* '$', '%', '#', '§', '&', and '~' are properly escaped. This
  fixes GitHub issue #71. Some Octave quirks are handled
  appropriately, see comments in the code for details.
* A bug for TeX strings like 'a^\alpha' is fixed.
* Some bugs in the clean-up code with strings containing escaped
  backslashes in critical places are fixed.

New function switchMatOct makes it easy to use different values
depending on whether matlab2tikz is run in MATLAB or in Octave.
This is necessary e.g. for regexprep with backslashes in the
replacement string.

The FIXME near the top of parseTexSubstring should be no cause for
alarm as inserting '{}' into a TeX string should not cause any
damage. Nevertheless it would be more semantically correct if the
braces weren't inserted, hence the FIXME.

PeterPablo/matlab2tikz,miscco/matlab2tikz,RPeschke/matlab2tikz,matlab2tikz/matlab2tikz,egeerardyn/matlab2tikz,nidrosianDeath/matlab2tikz,matlab2tikz/matlab2tikz,okomarov/matlab2tikz,egeerardyn/matlab2tikz,LJeub/matlab2tikz,okomarov/matlab2tikz