moving to bit masks to store connection channel state
* updated lower data layer to provide more durability and stability
* partially updated communication channel layer and PubNub core

TODO:
* complete message channel update with more reliable subscription/presence routes
* update PubNub core structure (separate into different files according to the scope)
* updated catch up mechanism
* handled data channel change (now reachability will trigger connection lost and after delay update it's state to correct one)
* added missed condition into rechability observer to handle situation when application returned from suspended mode and there is no connection available at this moment
Tweaked helper macro for GCD memory management
Fixed encryption when data size is multiple of 16 bytes
Fixed encryption when data size is multiple of 16 bytes
Fix some part of unit-tests
Procedural lock debug messages added
* cleaned up code for Mac OS from iOS specific code
* cleaned clang warnings
Merge branch 'hotfix-t52' into refinement-connection
* fixed issue when developer call disconnect when application enter into background and application itself call suspension. Now developers request has higher priority than library suspension
Merge branch 'hotfix-t34' into rv-fixes
Merge branch 'hotfix-t33' into rv-fixes
Merge branch 'hotfix-t54' into rv-fixes
Merge branch 'hotfix-t34' into refinement-connection
Merge branch 'hotfix-t54' into refinement-connection
Small adjustment as for resume methods call
Fixed wakeup timer handling