filters: Rewrite the submitter autocompletion code
We now have a nice(r) autocompletion widget that will popup the list of
options directly underneath the input fild. A few changes are done in
this commit that couldn't be split any further:
- Use jQuery's $.ajax() for the completion query
- Use the application/json content type on the completion answer to
allow jQuery to directly create an object from it instead of giving
back a string (because of the text/plain content type)
- Crafted more logical objects in the json answer ie all properties are
at the same level instead of the default queryset serializer that put
the object fields in a 'field' sub-object.
- Use selectize.js for the autocompletion widget logic
A slight change in behaviour is that we now don't allow "free form"
submitter search, ie we need a valid completion to search with that
specific person (through its primary key). I didn't remove the backend
logic that allows the "free form" mechanism, but maybe we should.
v2: Squash the unit tests fixes into this patch (Jeremy Kerr)