Session: use memcached for session management

In preparation for Tuakiri deployment behind a load balancer in
active-hotstandby configuration, switch to managing sessions in
memcached (local to each host), keeping only service and administrator
configuration in redis.

Switching sessions to memcached could be done quite easily with:

  use Rack::Session::Memcache, expire_after: 3600, secure: Sinatra::Base.production?

Except this would apply the expire_after setting also to session
cookies - which would mean session cookies would not be tied to browser
session and sessions would persist a browser restart.

As Rack::Session::Memcache only checks expire_after, we can't use the
trick done for Redis sessions in
d11742215188aca639236eaafe41b41a0f8ada0b - passing expire_in instead,
which gets checked by Redis store for expiry on session records but not
by Rack::Session::Abstract::ID.

As both Rack::Session::Memcache and Rack::Session::Abstract::ID check
:expire_after only, the only solution to have the expire applied to
sessions stored in memcached (so that sessions do expire) but not to
session cookie (so that the cookie is instead tied to browser session)
was to override the set_session method in a subclass of
Rack::Session::Memcache.

That's why this commit is introducing RapidConnectMemcacheSession in
app/rcmcsession.rb loaded by app/rapid_connect.rb - and initializes the
class with:

use RapidConnectMemcacheSession, memcache_session_expiry: 3600, secure: Sinatra::Base.production?