 
 void loop()
 {
-  static Display disp[2];
+  static Display disp(0);
+  static Display disp2(1);
   
   static uint16_t timing = 0;
   static uint16_t i = 0;

//Create program-wide objects
SoftwareSerial PCComm(11,10);  //Rx, Tx

I2cDiscreteIoExpander device(0);
I2cDiscreteIoExpander device2(1);

Timer t;  //Instantiate timer

class Display {
	public:
		Display();
		uint16_t current;
		uint16_t left;
		uint16_t right;

	
	i = ++i%10;
	
	configureToWrite(disp.left, LEFT, 'F' , 'F');
	configureToWrite(disp.right, RIGHT, '3', i + 48);
	configureToWrite(disp2.left, LEFT, 'f' , 'F');
	configureToWrite(disp2.right, RIGHT, '3', i + 48);
  }
  
  switch(CurrentState) {
    case DISPLEFT:
	  disp.dispLeft();
	  disp2.dispLeft();
      CurrentState = DISPRIGHT;
      break;
    case DISPRIGHT:
	  disp.dispRight();
	  disp2.dispRight();
      CurrentState = DISPLEFT;
      break;
  }
  
  
  status = disp.device->digitalWrite(disp.current);
  status2 = disp2.device->digitalWrite(disp.current);
  
  
  /*
