Parametrised intervals

Interval arithmetic rewritten to use parametrised intervals.
Tests pass.
I like it too. Yet, I am thinking about type-stability. In the first example above, it returns a 0-element `Array{Any,1}`. In the second example, it return a tuple with an interval and an expression. One possibility is that in the first case it returns something like `(∅, :none)`, or whatever other tuple with an interval and an expression.