I think that I have fixed some issues with the PID, but I have yet to test it.  The gyro angle does not send values in between -180 and 180, the PID controller does not only work with values from-180 to 180, and now incrementSetpoint uses -rotation because a positive rotation decreases the angle.