Fix custom_range bugs

Here is fix of two bugs with custom_range:

1. Function ```oscar.apps.offer.custom.create_range()``` don't check for equally custom ranges already added to DB, and IntegrityError will raises (reason is unique fields in Range model).
2. If object of custom range have name with ugettext_lazy then raise InterfaceError in sqlite3 (and some other errors in other DB). Reason is passed proxy object instead of string. ```force_text()``` added.

Tests is attached.