improved interface, added basic arith eg