restructured error handling - more centralized. added math runtime throwing and catching. added input runtime throwing only. added checks for illegal characters and variables within expression.