Added versioning to posts and extra tests

Added versioning to posts. The versioning works by keeping an extra copy
of each version of a post at a seperate index starting with
'post_versions'. The most recent version is always kept at the standard
'post'-sep-id key. On update/delete a new version is created and saved
to the 'post'-sep-id key while a copy of that new version is pushed on
to the 'post_version'-sep-id index. On purge, the standard key is
deleted while all the versioned copies are pushed into the deleted db.
The post object itself also has a new property 'version' that holds the
current version number (as a timestamp).

A new versions endpoint was also created so that given a postId, all
versions of that post is returned.

The posts tests were updated to account for the new post versioning.