Cover more features while creating a session

And perhaps have better way of passing the attrs?