Share Models between Realtime & Rest libraries
Standardise use of Exception constructor and add test coverage to invalid Presence ENTER
Presence documentation in README
Move Ably::Token into Ably::Models::Token
Improve documentation
fixup! Move Ably::Token into Ably::Models::Token
Additional Presence functionality #update, plus retain client_data automatically
Protocol updates to match Ably API, PresenceMessage#action instead of state, ProtocolMessage#id

- ProtocolMessage#id is now opaque and is never calculated in the client
- PresenceMessage now uses an action field instead of state
Allow :web mock tests to be run individually via RSpec by mocking out TestApp which attempts HTTP requests