create new PinController abstract class for Pumps and Burners; test code; update schema