CreateSession() and ReleaseSession() may be used to open or close login sessions. These calls should never be invoked directly by clients. Creating/closing sessions is exclusively the job of PAM and its pam_systemd module.

The old consolekit is more friendly. Session registration can be done by either dbus-api OpenSession() or pam_ck_connector.so

The upstream systemd developers are not very conservative with the dependencies required and use, for example, the GNU world tools more freely than eg. OpenRC as a BSD-like init system does
Since, remember, systemd is Linux-only like PAM is Linux-only unlike ConsoleKit and OpenRC which worked for BSD too when you stripped the pam_ck_connector.so away from it
You can get some of this behind #ifdef-like code if you provide the systemd upstream with a ready patch against current git in the freedesktop bugzilla, but don't count on it getting accepted

For what's it worth, it should be possible to disable logind in systemd and still use ConsoleKit (yes, ConsoleKit works for systemd too when logind is disabled) for many things in Portage, for example, the support for ConsoleKit in Xfce will stay for long time

I expect your prev. examination to be accurate (by this reply)

You should open a bug at http://bugs.gentoo.org/ if you want logind optional behind USE flag in sys-apps/systemd, also, I can't guarantee that will be accepted
Or if you can have both installed at the same time, then it's matter of running only one of them

In any case GNOME is out and will need logind and ConsoleKit won't work for it