Expression Manipulator v0.4 (bugs fixed, derivatives work with trig funcs)

Current functions built-in:- sin
- cos
- tan
- cot (cotangent)
- sec (secant)
- csc (cosecant)
- ln() (log of base 2.71...)
- log (log of base 10)
- sqrt (square root)
- f() is defined at run-time as f(x) = x + y

Later on I'll post an executable. But for now here are the features:- Extra factors and terms, even factors with powers of zero, are eliminated upon request, without problems anymore
- derive() allows you to take the derivative of anything (except factors with variables in the exponent. that's still a work in progress)
- when derived, trig functions work correctly. (ie: derive(sin(x)) == cos(x) * dx)
- ln(x) and log(x) work, too. log assumes base 10.
- simplifying is done in one function now.

Things to come:

- Factorization of single factors, then more complicated stuff like polynomials
- Integration through implementation of integration rules
- limits
- deriving variable exponents
- solving for a variable
- better standards compliance so it'll compile in changes in more compilers
- fractions and whole numbers
- A more natural grammar to work with through overloading operators
- implement text syntax for defining functions in run-time
- better private/public seperation

Please tell me what you think of it!