Because the binary tree is no longer appropriate, the current system to deal with functions is not fully functional when multiple functions are chained. When a proper AST will have been implemented, this issue should vanish.
In order to support arbitrary numbers, floats must be avoided. They'll have to be replaced pretty much everywhere by BigDecimals, which can handle numbers as long as needed.
A small issue concerning fractions. Since the common denominator research has not been implemented yet, the following expression :
2x/4 + x/4
will be simplified as "x/2 + x/4", because "2x/4" will be performed first, and will result in "x/2". Then, the denominator is no longer the same as "x/4", thus no further simplification will be performed.