Update engines field in package.json

PopIt is developed and deployed using node 0.10, this updates the
package.json metadata to match that.
Fix membership rendering on organization pages

Rather than refer to relatedObject, we instead have a 'member' (which
can be a person or an organization) and an 'organization' which they are
a member of.
Add conditional to organization edit/login links

We don't want to show the edit button to users that aren't logged in.
Conversely we don't want to show the login button to users that are
already logged in.
Extract duplicated edit logic into shared view

This view can be used for both the person and the organization editing
view so the logic isn't duplicated between these two very similar pages.
Fix bug with new organization button

The new organization button wasn't always working. This was because
there was some old code that was trying to open a modal to create the
organization in.

Instead it makes more sense just to link directly to the new entity
pages now (for both people and orgs) because they're no longer in
modals.
Make the delete membership button work again
Add placeholder text for membership date fields
Use an input rather than a select for organization
Get person membership editing working

This is still using the old code, and I've had to add a save button for
each membership for the time being, but it does work for existing
memberships.
Remove unused require statement
Simplify membership view creation
Basic edit view without javascript

Trying to make the edit view work without javascript, then progressivly
enhance it a bit where necessary seems like a better idea than the
tangle of javascript that we've got at the moment.
Update popit-api
Add popit-api's storageSelector middleware

This allows popit to access popit-api's models, which will mean that
eventually we can move towards having a single set of models, rather
than two which we have at the moment.
Add person update route to person app

This allows us to update the person without having to go via the API,
which allows us to intercept the request and pull out a person's
memberships and create/update them before saving the person.
Add href attributes to person Edit/Cancel links

Rather than using javascript for links we just make them real links.
Extract subfield editing into proper forms

Rather than using Backbone forms, we use actual form fields which can be
edited without having to mess around in the javascript.
Simplify adding a new other_name field

Rather than constructing the whole view in backbone, simply use a basic
underscore template and append it to the DOM.
Simplify adding profile links
Simplify contact_details editing