input: Write a python function to insert a node at the end of the linked list.
  ```python
  assert llist.head.data == 1
  llist.push(1)
  llist.push(2)
  assert llist.head.data == 2
  llist.insert_end(3)
  assert llist.head.next.next.data == 3
output: class Node:
      def __init__(self, data):
          self.data = data
          self.next = None
  
  class LinkedList:
      def __init__(self):
          self.head = None
  
      def push(self, new_data):
          new_node = Node(new_data)
          new_node.next = self.head
          self.head = new_node
  
      def insert_end(self, new_data):
          new_node = Node(new_data)
          if self.head is None:
              self.head = new_node
              return
          last = self.head
          while last.next:
              last = last.next
          last.next = new_node
  
  llist = LinkedList()
  llist.push(1)
  llist.push(2)
  llist.insert_end(3)