Added factory class and abstracted services and created alias.