Remove primary membership fields from the view

These fields have caused confusion as they don't get populated
automatically when entering data via the API and they don't work
properly when only adding a place and not a constituency.
Remove logic for processing primary memberships

This slightly confusing logic tried to find an existing organization
which the primary membership was referring to, and if it didn't exist it
created it. This is no longer needed because we're removing the concept
of primary membership.
Simplify membership removal javascript

We no longer need to worry about the primary membership being recreated,
so we can simplify the javascript which handles this.
Only name field is required for completed header

When the name field has been filled in we display the header which
allows the user to save and add another person.
remove entity-save-changes class from person submit button

the enter-to-save augmenter triggers a click on anything with a class of
entity-save-changes when you hit enter in an input box. If the submit
button has this class then it means there are two items with that class
on the page which means that sometimes the form is submitted twice. This
can cause multiple memberships to be added.

Fixes #599
allow memberships to be deleted and added at same time

If you added a new membership to a person then the list of ids passed to
the nin query would include an undefinded entry. As all the membership
id of a person were not undefined this would result in the query
never selecting any documents. We now filter out any undefineds from the
id list to prevent this.

Fixes #600
remove guest editing from codebase

now that we have can have multiple users per insance it no longer makes
sense to have guest logins

Fixes #577
initial token based api authentication

still needs to check if the permission for the token holder is valid for
the operation
basic api key management

page on hosting app to request and remove an api key.
use roles for api auth

and correctly handle the fact that legacy users do not have roles or
permissions