Add PDOFactory to encaptulate construction of PDO specific services

This takes care of #26