Update excon dependency
Extract out core gem server functionality into middleware

Fixes #33