(feat) Session.

Is the Clone bound on K and V necessary? They shouldn't be because .clone() on an Arc doesn't require the data inside the Arc to be cloneable.