Make generic breadcrumb implementation

And add breadcrumbs to editing pages
Fix topic editing page

First of all, fix how we create TopicNode objects for Topic objects
which do not have them. Before, this was in the form. However, this was
kind of complicated, and not keeping with usual practice for this sort
of thing. What we would normally do- for example for an object which
requires a `creator` to be set- is save the form in the view (without
committing), set the additional property, then commit it to the
database. In fact, we already implemented a method for the BaseAdminView
which does exactly that: `set_additional_object_properties`. Now, we set
the topic node in that mode.

Another small change is that we now pass **kwargs to the
`Topic.objects.create_along_with_node` method.
Update API tests
Fix typos & confusion in perm system

Rename variable in `update_project_permissions` and fix a typo in
documentation.
Make sure that mapping is put for ES indexes on creation
Fix case for putting mapping when es index is not yet created
Fix typo in last commit
Ok, REALLY make sure mappings are right in ES
Fix bug for working with ContentTypes in tests
Remove mistake migrations
Merge pull request #205 from editorsnotes/fix-editing-bugs

Fix editing bugs