login: fix invalid free() in sd_session_get_vt()

We need to clear variables markes as _cleanup_free_. Otherwise, our
error-paths might corrupt random memory.
login: make sd_session_get_vt() actually work

We use VTNR, not VTNr as key. Until now sd_session_get_vt() just returns
an error.