Try to better address closing states

  Also, try to document some stuff that was a bit confusing
Try to better implement the CloseWait state
Derive Generic for Mac and IP4
Request messages weren't including the server addr
Use DNS in tcp-test
getHostByAddr bug fix

IP4 bytes weren't reversed when constructing the in-addr.arpa domain
Merge branch 'master' into tcp-handler-rewrite

Conflicts:
	src/Hans/Layer/Tcp/Handlers.hs
	src/Hans/Layer/Tcp/Window.hs
Merge master in
Update the .gitignore

 * Remove cabal-dev stuff
 * Remove editor-specific stuff
 * Add cabal sandbox stuff
Clarify some of the logic in WaitBuffer
Remove the use of notify in an accepted socket

  `notify` is only supposed to be used to notify a user socket that the
connection was successful, so using it in the context of an accepted socket was
causing mzero to be used.