Allow empty post saving
Save Controller refactor

* Clean out unnecessary hooks + code + related tests
* Add post-"action" hooks
Commit saving improvements

No longer saves extra revision if file doesn't change
Create new update method and use in AJAX