Switch service from factor to standard service

And use promises instead of callback.

This is the same as @FND changes in
https://github.com/cdent/tank/pull/67 except for one minor change:
`getTanks` must be `getTanks()`. Pretty good since he couldn't run
it.

I tested  for the dual data retrieval that I was worried about and
it does not happen. This exhibits the same behavior as the previous
version.