Allow raw socket options and enable them for TCP

This patch lets the user set and use raw socket options as described in
inet:setopts/2 documentation.

The raw options can be useful to use TCP features that are platform-
specific and not supported in inet in general, such as TCP_DEFER_ACCEPT
or TCP_LINGER2 in linux stacks, for example.