Shells in OCaml

Arithmetic Expressions master

The initial engine for handling arithmetic expressions. There are plenty more operators to add, but those shouldn't be too hard. The real challenge is to fix the shell parser for consuming the expressions, it is currently broken w.r.t double left parens appearing inside the expression itself, e.g. $(( ((1 + 1) * 4) )).