Make DataService return promises