Shifting it into systemd is certainly an interesting approach and one that makes a great deal of sense. But you still need a certain amount of integration - your greeter needs to provide appropriate UI for the session daemons, and again that's something that's going to vary between desktops.
Re: perhaps all of thrse functions need not be...