Refactor syncstore.js to use generic loadable backends.

The original kvstore-backend syncstore implementation is now in
lib/syncstore/kvstore.js.  Other dedicated backends to follow.

The notification-endpoint code has been factored out so that we don't
have to duplicate it across backend implementations.
Implement a mysql backend for syncstore API.

This talks to MySQL directly rather than going through the kvstore
API, allow it to operate much more efficiently.

Also includes an update to latest release of mysql client library,
which we need to support pooling and transactions.
Remove custom mysql wrapper lib.
Merge pull request #74 from mozilla/syncstore-backends

Pluggable syncstore backends