Added a simple recursive complexity heuristic for assigning a complexity value to an expression for sorting them to solve later. The complexity is recursively computed by separating the polynomial and non-polynomial terms of the symbols for which the expression is to be solved.
Added a symbolic maximization and minimization function which can later be used to create a computation node for optimization based equation solution.