upgrade some stuff

goog has deprecated goog.result, gotta move to Promise
also made objects async readable, makes for nice syntax
when waiting for an object to "finish"