Refactored services/controllers to use promises