Added support for add_another_url kwargs
fix pep8 and AUTHORS
Use copy of attrs dict when building widget_attrs

Downstream code (e.g. for the taggit contrib autocomplete widget) will
add entries to the attrs dictionary during the rendering process.  This
resulted in a particular edge case:

1. Someone would view an edit form containing a TaggitWidget for an
   object that had already been tagged.
2. They would then navigate to an edit form containing a TaggitWidget
   for an object that had not yet been tagged.  The form would contain
   the tag list from the previous object.

This is due to the fact that the TextInput (in django.forms.widgets) was
adding a value attribute to the widget attrs (if the string was empty
which it would be if the object had not been tagged yet as in step 2,
then the value entry in the widget attrs was not updated and it would
keep the original value that was set during step 1 above).
Added tests to detect bug described in GH269

A bug is triggered when a model is registered with autocomplete light
and widget_attrs are provided.  In this situation, the widget_attrs
dictionary was being passed back through the HTML rendering chain and
modified in-place (e.g. the TextInput for Django forms would add a
'value' attribute).  The 'value' attribute would then show up in the
original widget_attrs dictionary.  This test case ensures that a copy of
the widget_attrs dictionary is made so that the original dictionary is
not modified.
Updated test_project.settings

The test_project settings needs to define SOUTH_MIGRATION_MODULES in
more recent iterations of Django and South.
Merge remote-tracking branch 'origin/pr/269' into v2
Merge remote-tracking branch 'origin/pr/267' into v2
Delegate all add_another url creation to Autocomplete
Added missing docstring