NOTE: There are 3 questions in here and I did not make separate questions since they are all somewhat related to the same code.
I have the following
There was also the issue that OpenSession returns a IDocumentSession instead of a DocumentSession. Changing my class to look for a IDocumentSession along with doing what Jim suggested worked, thanks.