re-implement sessions as generic, not dependent on pool, better MocClient, refactor pool specs for Excon and new MocClient