Unfinished abstract class to be implemented by all peripheral controllers.