Bump version number to 2.3.1.0
Remove upper version bounds on dependencies

This is a change in policy. From now on upper bounds will only be used
when newer versions of a dependency is known to not work.
Merge pull request #51 from singpolyma/stable
Network.Socket.socketToHandle always returns an unbuffered handle
Add an Ord instance for SockAddr

Fixes #12.
Reduce API variability due to system configuration

Now all constructors of SocketOption, Family, and SocketType will always
be declared, but using ones not supported on your system will lead to
runtime errors. To guard against these, new functions isSupportedFamily
etc. are introduced.

As a side effect, DummySocketOption__ goes away, so this is strictly
speaking a major API revision.

This partially, but not completely, addresses issue #40.
Various refactorings related to previous commit

- Replace several error-exceptions with IO exceptions
- Add docs to SocketOption, getSocketOption, setSocketOption
- Mention isSupportedFamily in Family docs
- Insulate properly against socket option levels being undefined
- Remove export of packSocketType, intended for internal use but not
  actually used
Hack to prevent spurious overlapping warnings
Oops, socketOptLevel should have been removed
Export packSocketType for now
Add Ord instances for URI and URIAuth

Fixes #54.
Rename bindSocket to bind

Keep bindSocket as a deprecated alias of bind.
Rename the sIs<State> predicates and leave deprecated aliases
Remove sendAncillary and recvAncillary

They are not used by any package on Hackage.
Add missing docs
Tweak homepage URL
Make relativeTo and nonStrictRelative not wrap result in Maybe

The functions were always returning Just. Also, according to the RFC the
algorithm is not guaranteed to return an absolute URL.

Fixes #50.
Bump version number to 2.4.0.0
Fix test suite to follow relativeTo change
Fix GHC 7.6 build on Windows