Implementing knockout with promises in service