fix indentation and spacing
Use strtod to parse numbers in path data, making parsing it much easier and maybe a little bit more accurate.
Also validate and abort parsing if any errors are found as required by the spec.
This fixes a few edge cases where librsvg crashes, and several rendering bugs.
Rewritten the code that determines wich markers are drawn and their orientation.
Now the rendering is in compliance with the latest spec.