revert back to transition_post_status method

`save_post` meant that discourse was getting posts that were scheduled for the future. Revert back to `transition_post_status` as the hook

the side effect is that we cannot direct publish anything as when this is called from a `"Publish"` action the primary category is yet to be set, meaning we don't have all the information necessary to publish to discourse.