add callback to workbook\'s save method

When I use the save method and response a file to browser, I found I got a empty file. After review the source code. I find the `workbook.save` is a async method but lack a callback.
I add a callback to the method and also accept exception instead of just throwing it.