removed PDO exception use, class is now an abstract class