Change progress api

This pull request changes the signature of the progress() method to include the time remaining and the status message.