[feature.py3] Fix 2 unclosed sockets that can happen on errors in supervisor/datatypes.py

Makes sure that socket gets closed in that the case that we create it but then an exception is raised while calling `bind` or other operations on it.

Fixes 2 of the `ResourceWarning` warnings in GH-391.

```
$ PYTHONWARNINGS="d" .tox/py33/bin/nosetests -q supervisor.tests.test_socket_manager
/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/unittest/case.py:135: ResourceWarning: unclosed <supervisor.medusa.text_socket.text_socket object, fd=4, family=2, type=1, proto=0>
  callable_obj(*args, **kwargs)
/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/unittest/case.py:135: ResourceWarning: unclosed <supervisor.medusa.text_socket.text_socket object, fd=3, family=1, type=1, proto=0>
  callable_obj(*args, **kwargs)
----------------------------------------------------------------------
Ran 13 tests in 0.181s

OK

$ git checkout feature.py3.fix_two_unclosed_sockets_on_errors
Switched to branch 'feature.py3.fix_two_unclosed_sockets_on_errors'

$ PYTHONWARNINGS="d" .tox/py33/bin/nosetests -q supervisor.tests.test_socket_manager
----------------------------------------------------------------------
Ran 13 tests in 0.011s

OK
```

Cc: @mcdonc, @mnaberez