Extract class Sorter
Separate Session and Sorter specs

When we extracted Sorter, our unit specs for Session became integration
specs. This commit separates them into true unit specs for both
Session and Sorter.