[feature/revisions] Implement post revision tracking

The majority of the functionality has been tested and works. There are still a few minor things that need to be done and tested, but I would like to go ahead and get the peer testing/reviewing started.

To test:
- Install this branch
- Go to `ACP -> Posting -> Post Revisions -> Settings` and ensure the feature is enabled. All other settings can be left as default unless you wish to test a specific setting.
- Ensure that your account has moderator permissions for viewing and managing post revisions, or at least that you can view and manage your own posts' revisions (I have not fully tested permissions, but I know moderator permissions work).
- Edit a topic at least once.
- When viewing the post, click "View edit history". When javascript is enabled, this will review a short list of the latest revisions directly beneath the post. If you click the "View edit history" link in the "LAST 5 REVISIONS (VIEW EDIT HISTORY)" line, or if javascript is disabled, it will take you to the full revisions view page.
- Play around with it some and let me know what does and doesn't work, and what needs to be changed.

Still to do:
[ ] Ensure the Wiki Posts feature works as intended
[ ] Test cron tasks (revision pruning)
[ ] Add checkboxes on revision view page for managing multiple revisions at once
[ ] Test all permissions
[ ] Stress test on large board (using QI) - Could use some help with this as well
[ ] Address concerns brought up in this PR.
[ ] More?