Allow session to handle calls and casts the same way as gen_server

This makes a session to be standard gen_server augmented with
expiration and message routing.
Allow to process not delivered messages in terminate
Merge pull request #4 from RumataEstor/server

Session is more a gen_server