Sesman provides facilities for session management and interactive session
association with the current contexts (e.g. project, directory, buffers).
While sesman can be used to manage arbitrary "sessions", it primary targets
the Emacs based IDEs (CIDER, ESS, Geiser, Robe, SLIME etc.) For Emacs based
IDEs, session are commonly composed of one or more physical processes
(sub-processes, sockets, websockets etc). For example in the current
implementation of CIDER a session would be composed of one or more sesman
connections (Clojure or ClojureScript). Each CIDER connection consists of
user REPL buffer and two sub-processes, one for user eval communication and
another for tooling (completion, inspector etc).