Use constants for control data.

Set a type for a peer.
Add peer to client.
Large refactor.

Removed STYClient and moved most of the functionality in (new) STYSocket.

A lot of STY*Peer went into STYSocket too.
Merge branch 'master' into develop

* master:
  (Python) send data as file.
Automatically commute dns-sd type & name.
(python) Load data from file

Fix missing metadata but.
(Python) added requirements to setup.py (removed unused imports)
Revert "(python) Load data from file"

(Original commit REMOVED this)

This reverts commit 9741dbf346a31562ae5cf170139fd753988fb0b8.
Don't use modules - avoids bug in clang.
Wrap iOS specific code.
Merge commit 'bf6309a6f79c49dbcc43632a99dc5b5f7579c15d' into jwight/no_modules

* commit 'bf6309a6f79c49dbcc43632a99dc5b5f7579c15d':
  Added .travis.yml
Build for all architectures.
Merge branch 'master' into jwight/no_modules

* master:
  Update README.markdown
  Update README.markdown