upgrade mixpanel.min.js to version 2.2
update mixpanel spec to reflect update to version 2.2
Merge pull request #65 from mdurn/master

Update mixpanel tracking script to version 2.2
Reverting lib/analytical.rb to fix SessionCommandStore (See #48)

Reverted lib/analytical.rb to commit 3cb1871e0c766c38c4723b8276f859d94823fbcb
Fixes a very minor spec failure regarding testing config file existence
Add option for dynamic modules

Especially handy in a multi-tenancy setup where each tenant might not want the same modules and keys.
Add Segment.io module

https://segment.io
Support loading module configurations from hash or proc
Update README to reflect changes

and selflessly add myself to the list of contributors.
Merge pull request #67 from dipth/dynamic_modules

Add option for dynamic modules
Add segment.io to list of supported services in readme
Add segment.io to list of supported services in readme
Add option for dynamic modules

Especially handy in a multi-tenancy setup where each tenant might not want the same modules and keys.
Support loading module configurations from hash or proc
Update README to reflect changes

and selflessly add myself to the list of contributors.
Merge branch 'refs/heads/master' into segment_io
Merge pull request #68 from dipth/segment_io

Add Segment.io module
Mixpanel: track page views as a single event, and allow optionally disabling of page view tracking

This change breaks compatibility for page view tracking via Mixpanel.

Previously, each page view was logged as a distinct event, with the URL as the name of
the event. This can result in many events, if you track many different URLs.

As of this commit the Mixpanel module logs each page view as an instance of the "page viewed" event.

This change confirms with a recommendation in the Mixpanel docs. See here:
  https://mixpanel.com/docs/getting-started/events-vs-page-views

To revert to the old behavior, use track(url, event: url) to specify the URL as the event name.

To disable page view tracking altogether in Mixpanel, initialize analytical with a { track: false }
option for the mixpanel module.

Lastly, the method signature for #track in this module now matches the method signature used elsewhere in the analytical gem.
Add support for the Mixpanel "alias" function

A call to analytical.alias_identity will now work for Mixpanel. Usage is slightly different than the already-existing KissMetrics implementation as the first parameter is ignored.

  analytical.alias_identity(nil, "the new identity")

The queueing of javascript commands is modified in two important ways:
1. "alias" is always added to the head of the queue rather than being appended.
2. "identify" is ignored (not queued) when "alias" is already at the head of the queue.

This behavior conforms with Mixpanel's recommended usage of alias and identify.
See https://mixpanel.com/docs/integration-libraries/using-mixpanel-alias.
Fix spec break caused by varying order of key/value pairs in analytical's result string