public void startServer(){
		
		//Send Html for all the clients
		for(int i = 0;i< 4*this.number_of_clients;i++){
			try{
				establishInitialConnection();
				if(html_sent==this.number_of_clients)
					break;
			}catch(FileNotFoundException e){
				System.out.println("Cannot establish initial connection. FileNotFoundException");
			}catch(IOException e){
				System.out.println("Cannot establish initial connection. IOException" + e.toString());
			}/*catch(InterruptedException e){
				System.out.println("Cannot establish initial connection. InterruptedException");
			}*/
		}

		System.out.println("Initial connection setup. Now setting up the persistent connection ");
		//Establish Persistent connection with all the clients 
		try{
			establishPersistentConnection();
		}catch(FileNotFoundException e){
			System.out.println("Could not establish persistent connection. FileNotFoundException");
		}catch(IOException e){
			System.out.println("Could not establish persistent connection. IOException");
		}	

		System.out.println("Starting the server thread to handle the backend storage logic...");
		
		//spawn the server thread after setting up initial connections	
   		new Thread( new ServerThreadedWorker("Server")).start();
		
   		   		
		System.out.println("Set up all connections !! Now setting up Handler for key press msgs");
	
		try{
			processKeyPress();
		}catch(FileNotFoundException e){
			System.out.println("Could not establish persistent connection. FileNotFoundException");
		}catch(IOException e){
			System.out.println("Could not establish persistent connection. IOException");
		}	
	}