First Frame promise API should just return the elapsed time using raf or smoothness, depending on availability.