parser ambiguous response fixes
- parser returns the first result in all cases where multiple results are returned. usually we either get multiple results only when the same result is returned via multiple parser paths; or if arbitrary variables are parsed ambiguously.
- fixes for when a diagram is requested after another diagram to prevent rejected promises
- some refactoring of constants
- some changes in sizing text and function arguments