NB Merged refactor [#12], [#59], [#60], [#66], [#67] (@ckarlsen), [#68], [#69] (@hugoduncan), more

Completely refactored Sente's client<->server data handling for:
  * Greater consistency, simplicity, robustness.
  * Increased efficiency (smaller cb ids, leaner cb wrapping format).
  * Pluggable serialization.

The pluggable serialization brings optional support for Transit, incl.
JSON and MessagePack over Transit (thanks to @ckarlsen for getting the ball
rolling on this!).

An early, experimental FlexiPacker is provided that allows per-payload
format selection and simple heuristic-based auto format selection for highly
efficient client<->server data comms in a wide range of use cases. This will
likely become Sente's standard (if not default) package format in future.

Other changes in this squashed commit include:
  * General code review + clean-up.
  * Improved logging.
  * A new client-side `chsk-destroy!` API fn.
  * Improved client+server router support for component-style configs
    (thanks to @hugoduncan for this!): server+client side routers now
    both receive `event-msg`s, and those `event-msg`s contain more
    useful goodies.
  * Client-side router now traps+logs errors like the server-side router.
  * Improve reference example's compatibility with LightTable.
Remove Transit :msgpack opt (seems to be unavailable)
v1.0.0-SNAPSHOT