Creating an Analytical Hub using Categories, Approval Process and Upvoting

Most of these things can probably be done with Discourse.

No problem there.

Can be done. Click on the category’s admin wrench > Settings > Scroll down to the ‘Moderation’ section and tick the require moderator approval of all new topics box.

Reviewers can edit the post in the review queue before approving it.

You can use the following plugins: