This was taking quite a lot of time and caching this significantly
improves performance.
We only need it because of the react-redux-router bug, but good to have
it in the meanwhile.
This will be a small library in the end, but at the moment it's in this
repo for convenience. It includes the etesync service, crypto and tests
to cover them.
The tests require a running debug etesync server.
To create one, just create a server from:
https://github.com/etesync/server-skeleton/
Set DEBUG to True, and create a test user with the credentials that are
listed in the test files.