Document.save not retaining ID and firing callback immediately
## Summary

1. `document.save()` doesn't change the ID of the document and `document.save(path, {saveMode: Save}, callback)` where path is the same path of the current document does change the ID of the document which is unexpected

2. `document.save(callback)` doesn't change the document ID which is okay, but the callback fires immediately, not after the document is being saved

Also there is no way to call `document.save()` by passing a callback and preserve the document ID.

## Steps to Reproduce

1. Call `document.save(path, {saveMode: Save}, callback)`
2. Call `document.save(callback)`

## Expected Results

1. Both functions should NOT change the document ID
2. The callback should be called after the document has been saved

## Actual Results

1. First function does not change the document ID, second function changes the document ID
2. Callback is fired right after the function has been called and before the document has been saved.

## Additional Information

**Sketch version:** 55.1
**macOS version:** 10.14.5
**Issue reported via:** https://app.frontapp.com/open/msg_2qyurpd