Fix issues with deleting memberships

Not sure why this has stopped working but if you use .nin or $nin in a
where and then tack on a remove, or use them in a remove then it
produces an error about there being a $ in the key. To fix this do the
where then explicitely remove all the returned memberships.

Fixes #666
Make sure API urls use the correct protocol

The API app is mounted inside another app, which in turn is mounted
inside a parent, so at the point the API is mounted the parent
doesn't have the trust proxy setting, so to fix the urls in the API
I've set some properties on the request object in the parent app,
which does correctly inherit the trust proxy setting.
Merge branch 'all-apps-should-trust-proxy'
Fix API url on API page
Add .vagrant directory to .gitignore
Show posts and post count on the instance homepage
Add virtual url property to post schema
Fix post display on homepage
Add initials method to Post

This doesn't really make sense for a post, need to come up with
something better to put here.
Add posts app using generic document

This allows posts to be listed at /posts in the UI.
Rename post partial used in organization view

The view post view is called post/view.html by default. The partial in
the organization view/form had a conflicting name, so I've renamed that
so we can use the default name for the actual post view.
Add page to view individual post

This shows the post label, role and area name.

Will also need to add the person/organization that these are attached to
if relevant.
Add post person and organization to view page

If there is an organization or person associated with a post then
display them on the post view page and link to them.