#45 reintroducing sessions using middleware