# different modes of the client state
module Mode
  def do_command(str)
    met = "on_#{@state}".to_sym
    if self.respond_to?(met) 
      self.send(met, str)
    else
      log "Unknown state #{@state}"
      @state = :login
    end
  end
end