Introduce lazy sessions

Session contexts are only created when requests actually change data,
instead of creating contexts whenever a session starts.
Cleanup usage of boost optional
Merge pull request #277 from bastih/feature/lazy_sessions

lazy sessions
Merge branch 'master' into feature/scheduler_configs
modified nr of threads of CentralPriorityscheduler