Added Client API Features: Channels (Private / Presence), Members, Clien...

Client API Features added:
Added 'PusherEventsService' service that holds all events (connection,
channel, presence) to broadcast from $rootScope
Added Client Even Trigger functions with validation
Added Presence Channel functions with validation
Added disconnect function
Authentication is Server-Side so no modifications to code is needed
I think you would want the condition to be `channelName.indexOf('presence-') == -1 && channelName.indexOf('private-') == -1`  otherwise this will always evaluate to true (unless you call a channel something like `private-presence-random-channel` obviously).