admin: make add related behaviour customizable

Decouple behaviour and style from the RelatedFieldWidgetWrapper
widget so it's easier to customize.
This makes life easier for people that want to say use a modal
or just style it differently.

While at it in change_form.html start consolidating document ready
event listeners in one place.
admin: cleanup duplicated js popup creation code
admin: make raw_id_fields widget themeable