 class PowerControl : public Command {
   public:
     virtual bool match(const String& name) const {
-      return name.startsWith("power");
+      return name == "power";
     }
     
     virtual void execute(const String& commandString) {

        } while (count > 0);
      }
    }
    
    virtual void printHelpString() const {
      Serial.println("  read [count]          reads a word from the current memory location and displayes it as text");
    }
};

class WriteTextWordControl : public Command {
  public:
    virtual bool match(const String& name) const {
      return name.startsWith("write");
    }
    
    virtual void execute(const String& commandString) {

}

void loop() {
  String cmdline = Serial.readStringUntil('\n');
  cmdline.trim();
  if (cmdline.length() > 0) {
    String cmd;
    {
      StringSplitter splitter(cmdline, ' ', 2);
      cmd = splitter.getItemAtIndex(0);
    }

    bool cmatched = false;
    for (int i = 0; i < COMMANDS_SIZE; i++) {
      if (commands[i] == nullptr) {
        break;
      }
      if (commands[i]->match(cmd)) {
        commands[i]->execute(cmdline);
        cmatched = true;
        break;
      }
