Added a DSL for formulas and some refactoring

The DSL is described in the readme in some accuracy. It is like in excell but with lisp like functions (e.g. `(sum A1:A9)`). 
Only sum function is implemented atm.