Add ProfilerInterface::getTotalElapsed() and correct return type docs