abstract pdo class