Deserialize the empty string into the empty string instead of colander.null

If you were previously relying on the old behavior, where if the value is present, but empty it was treated as missing (such as in some web forms), it may be necessary to add a Length validator.
    
```python
>>> foo = colander.SchemaNode(colander.String(), validator=colander.Length(min=1))
>>> foo.deserialize("")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "colander/__init__.py", line 1943, in deserialize
    self.validator(self, appstruct)
  File "colander/__init__.py", line 365, in __call__
    raise Invalid(node, min_err)
colander.Invalid: {'': u'Shorter than minimum length 1'}
```