basic form and start for some of the data types and operators
there is a bug in substraction and we're returning local variables which need to be fixed