reworking Service and Session concepts