bugfix: need to call the correct method recursively
bugfix: need to return bps when sync init as well as when resolving in async
added printout to see what's going on.
change names of timing variable, just in case they trounce on each other