Abstract services into objects