PROTON-696: Rearrange the header files:
- Reduce transitive header inclusions
- Remove proton/util.h and move its contents to src/util.h. All
  the defined symbols were internal.
- Stop including with lines like #include "../blah.h" as this
  isn't needed anymore.
(Fixes windows breakage from PROTON-676)

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1627219 13f79535-47bb-0310-9956-ffa450edef68
Initial refactoring of io layers:
- Eliminate some unnecessary stuff.
- Make pn_io_layer_t a pure interface.
Remove unused io_layer function.
Simplify amqp header code; remove header_count member from pn_transport_t
Refactor the io_layer
Change tick layer callbacks so that they're not chained just called in sequence
Remove transport pointer from ssl and sasl structs
- This involved changing pn_ssl_init() API
Reorganise layer initialisation:
- Defer until first send/receive
- Move layer initialisation entirely to transport
Mostly split transport into server/client sides
WIP
WIP: A lot of server autodetection done - not fully working yet
WIP: Somewhat working server autodetect - passes tests now
- There seems to be an issue if autodetecting ssl and the
  handshake failing that ssl isn't fully destroyed.