code: def pressed_keys(self):
          
          # make a list of all the keys that are detected
          pressed = []
  
          # set all pins pins to be inputs w/pullups
          for pin in self.row_pins+self.col_pins:
              pin.direction = Direction.INPUT
              pin.pull = Pull.UP
  
          for row in range(len(self.row_pins)):
              # set one row low at a time
              self.row_pins[row].direction = Direction.OUTPUT
              self.row_pins[row].value = False
              # check the column pins, which ones are pulled down
              for col in range(len(self.col_pins)):
                  if not self.col_pins[col].value:
                      pressed.append(self.keys[row][col])
              # reset the pin to be an input
              self.row_pins[row].direction = Direction.INPUT
              self.row_pins[row].pull = Pull.UP
          return pressed
docs: An array containing all detected keys that are pressed from the initalized
          list-of-lists passed in during creation