Added explicit parser-combinators dependency in Scala 2.11.
Incorporating comments from @non:

- moved into spire.math.expr subpackage,
- split ValueTree in pieces, which can be used if the underlying type is an EuclideanRing, a Field or a Trig.
- removed structural types, at the expense of more boiler-plate,
- changed the name of rationalValue to exactRationalValue, since it is used to simplify subexpressions containing only rational numbers (written without a decimal dot).