Remove the requirement to authenticate before calling a service object

There is no reason for Session#get_service_obj to require
authentication and it can do its job perfectly without it. The only
reason I can see it doing that is so that Service#request doesn't
crash. However, upon looking at Service#request, it already has the
necessary checks to ensure it has the data it needs. I did, however,
add a more helpful error message in cases where the client code did
forget to initialize the session data before calling Service#request.