public void Start() {
        BufferedReader inFromUser = new BufferedReader(new InputStreamReader(System.in));
        System.out.println("Starting client on ip: " + mServerIp + " and port: " + mServerPortNum);
        while (true) {
            try {
                try {
                    ConnectToServer();
                    while (true) {
                        if (System.in.available() > 0) {
                            sentence = inFromUser.readLine();
                        }
                        RunLoop();
                    }
                } catch (IOException e) {
                    if (e.getMessage().contentEquals("Connection refused")) {
                        System.out.println("Server is not online.  Attempting to reconnect in 3s");
                        try {
                            Thread.sleep(3000);
                        } catch (InterruptedException e1) {
                            System.out.println("Exception sleeping");
                            System.out.println(e1.getMessage());
                        }
                    }
                } catch (InterruptedException ie) {
                    System.out.println(ie.getMessage());
                } finally {
                    serverSocket.close();
                }
            } catch (IOException ioe) {
                System.out.println(ioe.getMessage());
            }
        }
    }