Add 'up' and 'down' relative ops
Overload .perl for ::Operation to avoid loops

Actually overloads .perl for ::Function, emitting
Math::Symbolic::Language.by_name{} lookups rather than sub-calling .perl
on Math::Symbolic::Operation properties.
Add a few more error checks in ::Tree.match()
Flesh out .expand()