Adding function and definition of Function

Also preparing to remove the interpreter from every node