Added optional urlfield in user profiles

This is good, but there is a problem. You are overriding the field's `clean` method, so the logic that is built in to the `URLField`'s clean method is never being run. So, rather than returning `value`, you should return the result of calling `clean` on the parent object, passing the new value to that.