Use either the native Promise or Micropromise for now, may change in the future.